From a13645a5ae086c04cc60bb8554cb4beca9068372 Mon Sep 17 00:00:00 2001 From: Kenji Kaneshige Date: Fri, 8 Apr 2005 14:53:31 +0900 Subject: [PATCH] --- yaml --- r: 852 b: refs/heads/master c: ceb43744cd48a20212e2179e0c7ff2f450a3c97e h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/sparc64/kernel/irq.c | 6 +++--- trunk/drivers/pci/pci.c | 7 +++---- trunk/include/net/addrconf.h | 3 +-- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index c562a49ce6e5..754ce9d6f37e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 235bd6140dad7c08261abdc1f8056485c5344a74 +refs/heads/master: ceb43744cd48a20212e2179e0c7ff2f450a3c97e diff --git a/trunk/arch/sparc64/kernel/irq.c b/trunk/arch/sparc64/kernel/irq.c index 4dcb8af94090..a38cb5036df0 100644 --- a/trunk/arch/sparc64/kernel/irq.c +++ b/trunk/arch/sparc64/kernel/irq.c @@ -756,7 +756,7 @@ void handler_irq(int irq, struct pt_regs *regs) clear_softint(clr_mask); } #else - int should_forward = 0; + int should_forward = 1; clear_softint(1 << irq); #endif @@ -1007,10 +1007,10 @@ static int retarget_one_irq(struct irqaction *p, int goal_cpu) } upa_writel(tid | IMAP_VALID, imap); - do { + while (!cpu_online(goal_cpu)) { if (++goal_cpu >= NR_CPUS) goal_cpu = 0; - } while (!cpu_online(goal_cpu)); + } return goal_cpu; } diff --git a/trunk/drivers/pci/pci.c b/trunk/drivers/pci/pci.c index bfbff8335268..fc8cc6c53778 100644 --- a/trunk/drivers/pci/pci.c +++ b/trunk/drivers/pci/pci.c @@ -398,10 +398,10 @@ pci_enable_device(struct pci_dev *dev) { int err; - dev->is_enabled = 1; if ((err = pci_enable_device_bars(dev, (1 << PCI_NUM_RESOURCES) - 1))) return err; pci_fixup_device(pci_fixup_enable, dev); + dev->is_enabled = 1; return 0; } @@ -427,16 +427,15 @@ pci_disable_device(struct pci_dev *dev) { u16 pci_command; - dev->is_enabled = 0; - dev->is_busmaster = 0; - pci_read_config_word(dev, PCI_COMMAND, &pci_command); if (pci_command & PCI_COMMAND_MASTER) { pci_command &= ~PCI_COMMAND_MASTER; pci_write_config_word(dev, PCI_COMMAND, pci_command); } + dev->is_busmaster = 0; pcibios_disable_device(dev); + dev->is_enabled = 0; } /** diff --git a/trunk/include/net/addrconf.h b/trunk/include/net/addrconf.h index a0ed93672176..f1e5af4be98e 100644 --- a/trunk/include/net/addrconf.h +++ b/trunk/include/net/addrconf.h @@ -17,8 +17,6 @@ #define IPV6_MAX_ADDRESSES 16 -#include - struct prefix_info { __u8 type; __u8 length; @@ -45,6 +43,7 @@ struct prefix_info { #ifdef __KERNEL__ +#include #include #include #include