* [BK PATCH] PCI reorg changes for 2.5.14 @ 2002-05-06 22:25 Greg KH 2002-05-07 9:02 ` Christoph Hellwig 2002-05-07 16:15 ` Ivan Kokshaysky 0 siblings, 2 replies; 10+ messages in thread From: Greg KH @ 2002-05-06 22:25 UTC (permalink / raw) To: torvalds; +Cc: mochel, linux-kernel Linus, Here is a series of changesets that reorganize the core and i386 PCI files. It splits the current big files up into smaller pieces, according to the different function and platform type (removing lots of #ifdefs in the process.) Pat Mochel did 99.9% of this work, and I've tested it out and forward ported it to your most recent kernel version. Due to there not being a active PCI maintainer (Martin Mares has abdicated the maintainership for 2.5 work), would you please apply these to your tree? Pull from: bk://ldm.bkbits.net/linux-2.5-pci For the non-bitkeeper users, this patch is available against 2.5.14 at: kernel.org/pub/linux/kernel/people/gregkh/misc/pci-reorg-2.5.14.patch thanks, greg k-h arch/i386/kernel/pci-dma.c | 37 arch/i386/kernel/pci-i386.c | 384 ---------- arch/i386/kernel/pci-i386.h | 73 - arch/i386/kernel/pci-irq.c | 866 ----------------------- arch/i386/kernel/pci-pc.c | 1423 -------------------------------------- arch/i386/kernel/pci-visws.c | 141 --- arch/i386/kernel/Makefile | 18 arch/i386/kernel/pci/Makefile | 29 arch/i386/kernel/pci/acpi.c | 70 + arch/i386/kernel/pci/changelog | 62 + arch/i386/kernel/pci/common.c | 206 +++++ arch/i386/kernel/pci/direct.c | 366 +++++++++ arch/i386/kernel/pci/dma.c | 37 arch/i386/kernel/pci/fixup.c | 163 ++++ arch/i386/kernel/pci/i386.c | 323 ++++++++ arch/i386/kernel/pci/irq.c | 810 +++++++++++++++++++++ arch/i386/kernel/pci/legacy.c | 53 + arch/i386/kernel/pci/numa.c | 119 +++ arch/i386/kernel/pci/pcbios.c | 559 +++++++++++++++ arch/i386/kernel/pci/pci.h | 75 ++ arch/i386/kernel/pci/visws.c | 141 +++ drivers/acpi/acpi_osl.c | 3 drivers/hotplug/cpqphp_core.c | 2 drivers/hotplug/cpqphp_pci.c | 2 drivers/hotplug/ibmphp_core.c | 2 drivers/pci/Makefile | 8 drivers/pci/access.c | 46 + drivers/pci/hotplug.c | 132 +++ drivers/pci/pci-driver.c | 136 +++ drivers/pci/pci.c | 1522 ----------------------------------------- drivers/pci/pool.c | 335 +++++++++ drivers/pci/power.c | 164 ++++ drivers/pci/probe.c | 603 ++++++++++++++++ drivers/pci/proc.c | 12 drivers/pci/search.c | 110 ++ include/linux/pci.h | 1 36 files changed, 4565 insertions(+), 4468 deletions(-) ------ ChangeSet@1.552, 2002-05-06 15:43:42-07:00, greg@kroah.com PCI hotplug update include file location changed due to pci changes drivers/hotplug/cpqphp_core.c | 2 +- drivers/hotplug/cpqphp_pci.c | 2 +- drivers/hotplug/ibmphp_core.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) ------ ChangeSet@1.551, 2002-05-06 14:37:30-07:00, greg@kroah.com hand merge of davej's x86 pci-pc janitor work arch/i386/kernel/pci/direct.c | 10 ++++++---- arch/i386/kernel/pci/fixup.c | 2 +- arch/i386/kernel/pci/legacy.c | 2 +- arch/i386/kernel/pci/pcbios.c | 12 ++++++------ 4 files changed, 14 insertions(+), 12 deletions(-) ------ ChangeSet@1.550, 2002-05-06 14:24:45-07:00, greg@kroah.com add back NCR53c810 PCI quirk code from davej that was lost in the merge arch/i386/kernel/pci/fixup.c | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) ------ ChangeSet@1.549, 2002-05-06 14:15:27-07:00, greg@kroah.com merge arch/i386/kernel/pci-pc.c | 1423 ------------------------------------------ arch/i386/kernel/pci/common.c | 206 ++++++ 2 files changed, 206 insertions(+), 1423 deletions(-) ------ ChangeSet@1.447.26.3, 2002-04-16 16:52:54-07:00, mochel@segfault.osdl.org Fix NUMA compile after PCI cleanup arch/i386/kernel/pci/Makefile | 6 ++++-- arch/i386/kernel/pci/numa.c | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-) ------ ChangeSet@1.447.14.10, 2002-04-16 16:11:33-07:00, mochel@segfault.osdl.org don't enable debug in arch/i386/kernel/pci/ arch/i386/kernel/pci/pci.h | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) ------ ChangeSet@1.447.14.8, 2002-04-16 13:26:35-07:00, mochel@segfault.osdl.org Further break-up-age Make ACPI PCI IRQ routing work a bit better... arch/i386/kernel/pci/Makefile | 11 ++++- arch/i386/kernel/pci/acpi.c | 70 +++++++++++++++++++++++++++++++++++ arch/i386/kernel/pci/common.c | 44 ---------------------- arch/i386/kernel/pci/irq.c | 82 ++++++------------------------------------ arch/i386/kernel/pci/legacy.c | 53 +++++++++++++++++++++++++++ arch/i386/kernel/pci/numa.c | 4 +- arch/i386/kernel/pci/pci.h | 5 +- drivers/acpi/acpi_osl.c | 3 + 8 files changed, 152 insertions(+), 120 deletions(-) ------ ChangeSet@1.447.14.7, 2002-04-16 09:03:57-07:00, mochel@segfault.osdl.org Further split/cleanup of x86 PCI code arch/i386/kernel/pci/Makefile | 18 arch/i386/kernel/pci/changelog | 62 ++ arch/i386/kernel/pci/common.c | 1170 ----------------------------------------- arch/i386/kernel/pci/direct.c | 364 ++++++++++++ arch/i386/kernel/pci/fixup.c | 150 +++++ arch/i386/kernel/pci/i386.c | 61 -- arch/i386/kernel/pci/numa.c | 114 +++ arch/i386/kernel/pci/pcbios.c | 559 +++++++++++++++++++ arch/i386/kernel/pci/pci.h | 1 drivers/pci/pci.c | 2 include/linux/pci.h | 1 11 files changed, 1271 insertions(+), 1231 deletions(-) ------ ChangeSet@1.447.14.6, 2002-04-15 15:25:54-07:00, mochel@segfault.osdl.org Move arch/i386/kernel/pci-*.c to arch/i386/kernel/pci/; prepare for further cleanups arch/i386/kernel/pci-dma.c | 37 - arch/i386/kernel/pci-i386.c | 384 ----------- arch/i386/kernel/pci-i386.h | 73 -- arch/i386/kernel/pci-irq.c | 866 ------------------------- arch/i386/kernel/pci-pc.c | 1400 ------------------------------------------ arch/i386/kernel/pci-visws.c | 141 ---- arch/i386/kernel/Makefile | 18 arch/i386/kernel/pci/Makefile | 16 arch/i386/kernel/pci/common.c | 1400 ++++++++++++++++++++++++++++++++++++++++++ arch/i386/kernel/pci/dma.c | 37 + arch/i386/kernel/pci/i386.c | 384 +++++++++++ arch/i386/kernel/pci/irq.c | 866 +++++++++++++++++++++++++ arch/i386/kernel/pci/pci.h | 73 ++ arch/i386/kernel/pci/visws.c | 141 ++++ 14 files changed, 2923 insertions(+), 2913 deletions(-) ------ ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-06 22:25 [BK PATCH] PCI reorg changes for 2.5.14 Greg KH @ 2002-05-07 9:02 ` Christoph Hellwig 2002-05-07 16:15 ` Ivan Kokshaysky 1 sibling, 0 replies; 10+ messages in thread From: Christoph Hellwig @ 2002-05-07 9:02 UTC (permalink / raw) To: Greg KH; +Cc: torvalds, mochel, linux-kernel On Mon, May 06, 2002 at 03:25:07PM -0700, Greg KH wrote: > Linus, > > Here is a series of changesets that reorganize the core and i386 PCI > files. It splits the current big files up into smaller pieces, > according to the different function and platform type (removing lots of > #ifdefs in the process.) Pat Mochel did 99.9% of this work, and I've > tested it out and forward ported it to your most recent kernel version. > > Due to there not being a active PCI maintainer (Martin Mares has > abdicated the maintainership for 2.5 work), would you please apply these > to your tree? > > Pull from: bk://ldm.bkbits.net/linux-2.5-pci I think arch/i386/pci would be more appropinquate than arch/i386/kernel/pci. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-06 22:25 [BK PATCH] PCI reorg changes for 2.5.14 Greg KH 2002-05-07 9:02 ` Christoph Hellwig @ 2002-05-07 16:15 ` Ivan Kokshaysky 2002-05-07 16:49 ` Greg KH 1 sibling, 1 reply; 10+ messages in thread From: Ivan Kokshaysky @ 2002-05-07 16:15 UTC (permalink / raw) To: Greg KH; +Cc: torvalds, mochel, linux-kernel On Mon, May 06, 2002 at 03:25:07PM -0700, Greg KH wrote: > Here is a series of changesets that reorganize the core and i386 PCI > files. It splits the current big files up into smaller pieces, > according to the different function and platform type (removing lots of > #ifdefs in the process.) Pat Mochel did 99.9% of this work, and I've > tested it out and forward ported it to your most recent kernel version. There are missing #includes which will break compilation on some non-x86 platforms. With following patch this compiles and works on alpha. Ivan. --- 2.5.14-reorg/arch/alpha/kernel/pci.c Tue May 7 18:38:42 2002 +++ linux/arch/alpha/kernel/pci.c Tue May 7 19:40:04 2002 @@ -193,13 +193,15 @@ pcibios_align_resource(void *data, struc #undef MB #undef GB -void __init +static void __init pcibios_init(void) { if (!alpha_mv.init_pci) return; alpha_mv.init_pci(); } + +subsys_initcall(pcibios_init); char * __init pcibios_setup(char *str) --- 2.5.14-reorg/drivers/pci/probe.c Tue May 7 18:15:54 2002 +++ linux/drivers/pci/probe.c Tue May 7 19:02:38 2002 @@ -2,7 +2,9 @@ * probe.c - PCI detection and setup code */ +#include <linux/init.h> #include <linux/pci.h> +#include <linux/slab.h> #include <linux/module.h> #undef DEBUG --- 2.5.14-reorg/drivers/pci/pci.c Tue May 7 18:15:54 2002 +++ linux/drivers/pci/pci.c Tue May 7 19:05:28 2002 @@ -9,6 +9,8 @@ * Copyright 1997 -- 2000 Martin Mares <mj@ucw.cz> */ +#include <linux/delay.h> +#include <linux/init.h> #include <linux/pci.h> #include <linux/module.h> #include <linux/spinlock.h> --- 2.5.14-reorg/drivers/pci/pool.c Tue May 7 19:07:51 2002 +++ linux/drivers/pci/pool.c Tue May 7 19:07:15 2002 @@ -1,4 +1,5 @@ #include <linux/pci.h> +#include <linux/slab.h> #include <linux/module.h> /* --- 2.5.14-reorg/drivers/pci/proc.c Tue May 7 18:15:54 2002 +++ linux/drivers/pci/proc.c Tue May 7 19:09:13 2002 @@ -6,6 +6,7 @@ * Copyright (c) 1997--1999 Martin Mares <mj@ucw.cz> */ +#include <linux/init.h> #include <linux/pci.h> #include <linux/module.h> #include <linux/proc_fs.h> ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 16:15 ` Ivan Kokshaysky @ 2002-05-07 16:49 ` Greg KH 2002-05-07 18:27 ` Linus Torvalds 0 siblings, 1 reply; 10+ messages in thread From: Greg KH @ 2002-05-07 16:49 UTC (permalink / raw) To: Ivan Kokshaysky; +Cc: torvalds, mochel, linux-kernel On Tue, May 07, 2002 at 08:15:11PM +0400, Ivan Kokshaysky wrote: > On Mon, May 06, 2002 at 03:25:07PM -0700, Greg KH wrote: > > Here is a series of changesets that reorganize the core and i386 PCI > > files. It splits the current big files up into smaller pieces, > > according to the different function and platform type (removing lots of > > #ifdefs in the process.) Pat Mochel did 99.9% of this work, and I've > > tested it out and forward ported it to your most recent kernel version. > > There are missing #includes which will break compilation on some non-x86 > platforms. With following patch this compiles and works on alpha. I've added this patch, and both Pat and I moved the files into the different directory name. I'll test this all out and send an updated patch later today. thanks, greg k-h ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 16:49 ` Greg KH @ 2002-05-07 18:27 ` Linus Torvalds 2002-05-07 20:23 ` Greg KH 0 siblings, 1 reply; 10+ messages in thread From: Linus Torvalds @ 2002-05-07 18:27 UTC (permalink / raw) To: Greg KH; +Cc: Ivan Kokshaysky, mochel, linux-kernel On Tue, 7 May 2002, Greg KH wrote: > > I've added this patch, and both Pat and I moved the files into the > different directory name. I'll test this all out and send an updated > patch later today. Greg, Pat - this changeset seems to completely break ACPI interrupt routing. I suspect it's an ordering issue, with the new "pci_lookup_irq" getting assigned the wrong value (or the ACPI irq init not being done or whatever). Please give this a good look. Linus ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 18:27 ` Linus Torvalds @ 2002-05-07 20:23 ` Greg KH 2002-05-07 21:29 ` Patrick Mochel 0 siblings, 1 reply; 10+ messages in thread From: Greg KH @ 2002-05-07 20:23 UTC (permalink / raw) To: Linus Torvalds; +Cc: Ivan Kokshaysky, mochel, linux-kernel > Greg, Pat - this changeset seems to completely break ACPI interrupt > routing. > > I suspect it's an ordering issue, with the new "pci_lookup_irq" getting > assigned the wrong value (or the ACPI irq init not being done or > whatever). > > Please give this a good look. Pat found the problem, it was due to the startup ordering issue (he could give a better explanation than I could), and the update is checked in. Pull from: bk://ldm.bkbits.net/linux-2.5-pci For the non-bitkeeper users, this patch is available against 2.5.14 at: kernel.org/pub/linux/kernel/people/gregkh/misc/pci-reorg-2-2.5.14.patch arch/i386/kernel/pci-dma.c | 37 - arch/i386/kernel/pci-i386.c | 384 ---------- arch/i386/kernel/pci-i386.h | 73 -- arch/i386/kernel/pci-irq.c | 866 ----------------------- arch/i386/kernel/pci-pc.c | 1423 --------------------------------------- arch/i386/kernel/pci-visws.c | 141 --- Makefile | 2 arch/alpha/kernel/pci.c | 4 arch/i386/Makefile | 5 arch/i386/kernel/Makefile | 12 arch/i386/pci/Makefile | 29 arch/i386/pci/acpi.c | 70 + arch/i386/pci/changelog | 62 + arch/i386/pci/common.c | 206 +++++ arch/i386/pci/direct.c | 366 ++++++++++ arch/i386/pci/dma.c | 37 + arch/i386/pci/fixup.c | 163 ++++ arch/i386/pci/i386.c | 323 ++++++++ arch/i386/pci/irq.c | 810 ++++++++++++++++++++++ arch/i386/pci/legacy.c | 53 + arch/i386/pci/numa.c | 119 +++ arch/i386/pci/pcbios.c | 559 +++++++++++++++ arch/i386/pci/pci.h | 75 ++ arch/i386/pci/visws.c | 141 +++ drivers/acpi/acpi_osl.c | 3 drivers/hotplug/cpqphp_core.c | 2 drivers/hotplug/cpqphp_pci.c | 2 drivers/hotplug/ibmphp_core.c | 2 drivers/pci/Makefile | 8 drivers/pci/access.c | 46 + drivers/pci/hotplug.c | 132 +++ drivers/pci/pci-driver.c | 136 +++ drivers/pci/pci.c | 1526 ------------------------------------------ drivers/pci/pool.c | 336 +++++++++ drivers/pci/power.c | 164 ++++ drivers/pci/probe.c | 605 ++++++++++++++++ drivers/pci/proc.c | 13 drivers/pci/search.c | 110 +++ include/linux/pci.h | 1 39 files changed, 4576 insertions(+), 4470 deletions(-) ------ ChangeSet@1.557, 2002-05-07 10:58:20-07:00, greg@kroah.com PCI hotplug drivers change due to moved location of i386's pci.h drivers/hotplug/cpqphp_core.c | 2 +- drivers/hotplug/cpqphp_pci.c | 2 +- drivers/hotplug/ibmphp_core.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) ------ ChangeSet@1.556, 2002-05-07 10:27:30-07:00, mochel@segfault.osdl.org Merge bk://ldm@bkbits.net/linux-2.5-pci into segfault.osdl.org:/home/mochel/src/kernel/devel/linux-2.5-pci drivers/pci/pci.c | 2 ++ 1 files changed, 2 insertions(+) ------ ChangeSet@1.554.1.1, 2002-05-07 10:27:12-07:00, mochel@segfault.osdl.org PCI Update: Fix oops on boot w/ ACPI enabled Makefile | 2 +- arch/i386/pci/Makefile | 4 ++-- arch/i386/pci/acpi.c | 2 +- arch/i386/pci/direct.c | 2 +- arch/i386/pci/pcbios.c | 2 +- drivers/pci/pci.c | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) ------ ChangeSet@1.555, 2002-05-07 10:19:42-07:00, greg@kroah.com merge arch/i386/Makefile | 4 ++-- arch/i386/kernel/Makefile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) ------ ChangeSet@1.552.1.1, 2002-05-07 09:54:45-07:00, ink@jurassic.park.msu.ru [PATCH] Fix missing #includes There are missing #includes which will break compilation on some non-x86 platforms. With following patch this compiles and works on alpha. Ivan. arch/alpha/kernel/pci.c | 4 +++- drivers/pci/pci.c | 2 ++ drivers/pci/pool.c | 1 + drivers/pci/probe.c | 2 ++ drivers/pci/proc.c | 1 + 5 files changed, 9 insertions(+), 1 deletion(-) ------ ChangeSet@1.552, 2002-05-06 15:43:42-07:00, greg@kroah.com PCI hotplug update include file location changed due to pci changes drivers/hotplug/cpqphp_core.c | 2 +- drivers/hotplug/cpqphp_pci.c | 2 +- drivers/hotplug/ibmphp_core.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) ------ ChangeSet@1.551, 2002-05-06 14:37:30-07:00, greg@kroah.com hand merge of davej's x86 pci-pc janitor work arch/i386/kernel/pci/direct.c | 10 ++++++---- arch/i386/kernel/pci/fixup.c | 2 +- arch/i386/kernel/pci/legacy.c | 2 +- arch/i386/kernel/pci/pcbios.c | 12 ++++++------ 4 files changed, 14 insertions(+), 12 deletions(-) ------ ChangeSet@1.550, 2002-05-06 14:24:45-07:00, greg@kroah.com add back NCR53c810 PCI quirk code from davej that was lost in the merge arch/i386/kernel/pci/fixup.c | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) ------ ChangeSet@1.549, 2002-05-06 14:15:27-07:00, greg@kroah.com merge arch/i386/kernel/pci-pc.c | 1423 ------------------------------------------ arch/i386/kernel/pci/common.c | 206 ++++++ 2 files changed, 206 insertions(+), 1423 deletions(-) ------ ChangeSet@1.447.26.3, 2002-04-16 16:52:54-07:00, mochel@segfault.osdl.org Fix NUMA compile after PCI cleanup arch/i386/kernel/pci/Makefile | 6 ++++-- arch/i386/kernel/pci/numa.c | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-) ------ ChangeSet@1.447.14.10, 2002-04-16 16:11:33-07:00, mochel@segfault.osdl.org don't enable debug in arch/i386/kernel/pci/ arch/i386/kernel/pci/pci.h | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) ------ ChangeSet@1.447.14.8, 2002-04-16 13:26:35-07:00, mochel@segfault.osdl.org Further break-up-age Make ACPI PCI IRQ routing work a bit better... arch/i386/kernel/pci/Makefile | 11 ++++- arch/i386/kernel/pci/acpi.c | 70 +++++++++++++++++++++++++++++++++++ arch/i386/kernel/pci/common.c | 44 ---------------------- arch/i386/kernel/pci/irq.c | 82 ++++++------------------------------------ arch/i386/kernel/pci/legacy.c | 53 +++++++++++++++++++++++++++ arch/i386/kernel/pci/numa.c | 4 +- arch/i386/kernel/pci/pci.h | 5 +- drivers/acpi/acpi_osl.c | 3 + 8 files changed, 152 insertions(+), 120 deletions(-) ------ ChangeSet@1.447.14.7, 2002-04-16 09:03:57-07:00, mochel@segfault.osdl.org Further split/cleanup of x86 PCI code arch/i386/kernel/pci/Makefile | 18 arch/i386/kernel/pci/changelog | 62 ++ arch/i386/kernel/pci/common.c | 1170 ----------------------------------------- arch/i386/kernel/pci/direct.c | 364 ++++++++++++ arch/i386/kernel/pci/fixup.c | 150 +++++ arch/i386/kernel/pci/i386.c | 61 -- arch/i386/kernel/pci/numa.c | 114 +++ arch/i386/kernel/pci/pcbios.c | 559 +++++++++++++++++++ arch/i386/kernel/pci/pci.h | 1 drivers/pci/pci.c | 2 include/linux/pci.h | 1 11 files changed, 1271 insertions(+), 1231 deletions(-) ------ ChangeSet@1.447.14.6, 2002-04-15 15:25:54-07:00, mochel@segfault.osdl.org Move arch/i386/kernel/pci-*.c to arch/i386/kernel/pci/; prepare for further cleanups arch/i386/kernel/pci-dma.c | 37 - arch/i386/kernel/pci-i386.c | 384 ----------- arch/i386/kernel/pci-i386.h | 73 -- arch/i386/kernel/pci-irq.c | 866 ------------------------- arch/i386/kernel/pci-pc.c | 1400 ------------------------------------------ arch/i386/kernel/pci-visws.c | 141 ---- arch/i386/kernel/Makefile | 18 arch/i386/kernel/pci/Makefile | 16 arch/i386/kernel/pci/common.c | 1400 ++++++++++++++++++++++++++++++++++++++++++ arch/i386/kernel/pci/dma.c | 37 + arch/i386/kernel/pci/i386.c | 384 +++++++++++ arch/i386/kernel/pci/irq.c | 866 +++++++++++++++++++++++++ arch/i386/kernel/pci/pci.h | 73 ++ arch/i386/kernel/pci/visws.c | 141 ++++ 14 files changed, 2923 insertions(+), 2913 deletions(-) ------ ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 20:23 ` Greg KH @ 2002-05-07 21:29 ` Patrick Mochel 2002-05-07 21:50 ` Linus Torvalds 0 siblings, 1 reply; 10+ messages in thread From: Patrick Mochel @ 2002-05-07 21:29 UTC (permalink / raw) To: Greg KH; +Cc: Linus Torvalds, Ivan Kokshaysky, linux-kernel On Tue, 7 May 2002, Greg KH wrote: > > Greg, Pat - this changeset seems to completely break ACPI interrupt > > routing. > > > > I suspect it's an ordering issue, with the new "pci_lookup_irq" getting > > assigned the wrong value (or the ACPI irq init not being done or > > whatever). > > > > Please give this a good look. > > Pat found the problem, it was due to the startup ordering issue (he > could give a better explanation than I could), and the update is checked > in. Actually, there was an ordering problem, which was causing an oops on boot. But, that doesn't help with IRQ routing. The problem is that ACPI IRQ routing doesn't work at all in 2.5.14 if you have support for APICs enabled in any way. I've tried .14-virgin, .14-dj1 and .14-pci, each with and without ACPI enabled, and with and without APIC support enabled on UP, and with and without SMP enabled. The results are consistent: acpi apic irq? -------------------- yes yes no yes no yes no yes yes The ACPI people are working on this problem. Their latest patch (20020503) plus Dominik Brodowski's latest patch applied to .14-virgin allow me to get IRQs assigned. However, the relevant ACPI changes are are wrapped up in many other changes to the subsystem... -pat ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 21:29 ` Patrick Mochel @ 2002-05-07 21:50 ` Linus Torvalds 2002-05-07 23:13 ` Patrick Mochel 2002-05-08 3:55 ` Jeff Garzik 0 siblings, 2 replies; 10+ messages in thread From: Linus Torvalds @ 2002-05-07 21:50 UTC (permalink / raw) To: Patrick Mochel; +Cc: Greg KH, Ivan Kokshaysky, linux-kernel On Tue, 7 May 2002, Patrick Mochel wrote: > > Actually, there was an ordering problem, which was causing an oops on > boot. But, that doesn't help with IRQ routing. > > The problem is that ACPI IRQ routing doesn't work at all in 2.5.14 if you > have support for APICs enabled in any way. Hmm.. That may be true, but at least 2.5.14 gets the interrupt routing right. Which may be because it knows to fall back on the MP table parsing if it can't work out the ACPI stuff, and you probably broke that part. The whole notion of having just _one_ PCI interrupt routing function is definitely _broken_. The rule in 2.5.14 is "try ACPI if it's enabled, and if that works, we're fine. If it doesn't work, let's try the legacy stuff". In contrast, your PCI irq changes seem to say "if we found ACPI tables, we use ACPI routing", which is just stupid. Please fix it to work at _least_ as well as 2.5.14 does (and yes, my home machine works fine with APIC and ACPI enabled on 2.5.14, and since it's a dual P4 HT machine it _cannot_ work any other way - and the PCI BK changes break it to the point of not booting). Linus ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 21:50 ` Linus Torvalds @ 2002-05-07 23:13 ` Patrick Mochel 2002-05-08 3:55 ` Jeff Garzik 1 sibling, 0 replies; 10+ messages in thread From: Patrick Mochel @ 2002-05-07 23:13 UTC (permalink / raw) To: Linus Torvalds; +Cc: Greg KH, Ivan Kokshaysky, linux-kernel On Tue, 7 May 2002, Linus Torvalds wrote: > > On Tue, 7 May 2002, Patrick Mochel wrote: > > > > Actually, there was an ordering problem, which was causing an oops on > > boot. But, that doesn't help with IRQ routing. > > > > The problem is that ACPI IRQ routing doesn't work at all in 2.5.14 if you > > have support for APICs enabled in any way. > > Hmm.. That may be true, but at least 2.5.14 gets the interrupt routing > right. > > Which may be because it knows to fall back on the MP table parsing if it > can't work out the ACPI stuff, and you probably broke that part. > > The whole notion of having just _one_ PCI interrupt routing function is > definitely _broken_. The rule in 2.5.14 is "try ACPI if it's enabled, and > if that works, we're fine. If it doesn't work, let's try the legacy > stuff". > > In contrast, your PCI irq changes seem to say "if we found ACPI tables, we > use ACPI routing", which is just stupid. Oh right, the check for valid ACPI routing tables is _supposed_ to be there... > Please fix it to work at _least_ as well as 2.5.14 does (and yes, my home > machine works fine with APIC and ACPI enabled on 2.5.14, and since it's a > dual P4 HT machine it _cannot_ work any other way - and the PCI BK changes > break it to the point of not booting). The check is back in there now, and it works here, so IRQ routing works on 2.5.14 with an SMP kernel. Greg has verified that it also works on a P-IV SMP system. You can pull from bk://ldm.bkbits.net/linux-2.5-pci/ -pat ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [BK PATCH] PCI reorg changes for 2.5.14 2002-05-07 21:50 ` Linus Torvalds 2002-05-07 23:13 ` Patrick Mochel @ 2002-05-08 3:55 ` Jeff Garzik 1 sibling, 0 replies; 10+ messages in thread From: Jeff Garzik @ 2002-05-08 3:55 UTC (permalink / raw) To: Linus Torvalds; +Cc: Patrick Mochel, Greg KH, Ivan Kokshaysky, linux-kernel Linus Torvalds wrote: >The whole notion of having just _one_ PCI interrupt routing function is >definitely _broken_. > Yeah -- having a per-device interrupt router would be quite useful for those Via devices we had so much interrupt routing trouble with... Jeff ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2002-05-08 3:55 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2002-05-06 22:25 [BK PATCH] PCI reorg changes for 2.5.14 Greg KH 2002-05-07 9:02 ` Christoph Hellwig 2002-05-07 16:15 ` Ivan Kokshaysky 2002-05-07 16:49 ` Greg KH 2002-05-07 18:27 ` Linus Torvalds 2002-05-07 20:23 ` Greg KH 2002-05-07 21:29 ` Patrick Mochel 2002-05-07 21:50 ` Linus Torvalds 2002-05-07 23:13 ` Patrick Mochel 2002-05-08 3:55 ` Jeff Garzik
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox