diff --git a/Makefile b/Makefile index ea1296b48..c08c2522c 100644 --- a/Makefile +++ b/Makefile @@ -88,6 +88,7 @@ debug: @perl -pi -e 's/# CONFIG_KDB_KEYBOARD is not set/CONFIG_KDB_KEYBOARD=y/' config-nodebug @perl -pi -e 's/# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set/CONFIG_CPU_NOTIFIER_ERROR_INJECT=m/' config-nodebug @perl -pi -e 's/# CONFIG_DEBUG_PER_CPU_MAPS is not set/CONFIG_DEBUG_PER_CPU_MAPS=y/' config-nodebug + #@perl -pi -e 's/# CONFIG_PCI_DEFAULT_USE_CRS is not set/CONFIG_PCI_DEFAULT_USE_CRS=y/' config-nodebug @# just in case we're going from extremedebug -> debug @perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-nodebug @@ -156,6 +157,7 @@ release: #@perl -pi -e 's/CONFIG_KGDB_KDB=y/# CONFIG_KGDB_KDB is not set/' config-nodebug #@perl -pi -e 's/CONFIG_KDB_KEYBOARD=y/# CONFIG_KDB_KEYBOARD is not set/' config-nodebug @perl -pi -e 's/CONFIG_DEBUG_PER_CPU_MAPS=y/# CONFIG_DEBUG_PER_CPU_MAPS is not set/' config-nodebug + #@perl -pi -e 's/CONFIG_PCI_DEFAULT_USE_CRS=y/# CONFIG_PCI_DEFAULT_USE_CRS is not set/' config-nodebug @perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-debug @perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-nodebug diff --git a/config-debug b/config-debug index f8c7c00b1..6c6209e6b 100644 --- a/config-debug +++ b/config-debug @@ -87,5 +87,7 @@ CONFIG_PM_ADVANCED_DEBUG=y CONFIG_CEPH_FS_PRETTYDEBUG=y CONFIG_QUOTA_DEBUG=y +# CONFIG_PCI_DEFAULT_USE_CRS is not set + CONFIG_KGDB_KDB=y CONFIG_KDB_KEYBOARD=y diff --git a/config-nodebug b/config-nodebug index 5c7f4364e..e1f14bb59 100644 --- a/config-nodebug +++ b/config-nodebug @@ -87,5 +87,7 @@ CONFIG_PM_ADVANCED_DEBUG=y CONFIG_CEPH_FS_PRETTYDEBUG=y CONFIG_QUOTA_DEBUG=y +# CONFIG_PCI_DEFAULT_USE_CRS is not set + CONFIG_KGDB_KDB=y CONFIG_KDB_KEYBOARD=y diff --git a/kernel.spec b/kernel.spec index 134f6f334..48e29f5bb 100644 --- a/kernel.spec +++ b/kernel.spec @@ -615,6 +615,7 @@ Patch204: linux-2.6-debug-always-inline-kzalloc.patch Patch300: create-sys-fs-cgroup-to-mount-cgroupfs-on.patch Patch380: linux-2.6-defaults-pci_no_msi.patch +Patch381: linux-2.6-defaults-pci_use_crs.patch Patch383: linux-2.6-defaults-aspm.patch Patch384: pci-acpi-disable-aspm-if-no-osc.patch Patch385: pci-aspm-dont-enable-too-early.patch @@ -1206,6 +1207,7 @@ ApplyPatch linux-2.6-debug-always-inline-kzalloc.patch # # make default state of PCI MSI a config option ApplyPatch linux-2.6-defaults-pci_no_msi.patch +ApplyPatch linux-2.6-defaults-pci_use_crs.patch # enable ASPM by default on hardware we expect to work ApplyPatch linux-2.6-defaults-aspm.patch # disable aspm if acpi doesn't provide an _OSC method @@ -1921,6 +1923,9 @@ fi # and build. %changelog +* Wed Sep 08 2010 Kyle McMartin +- Make pci=use_crs a config option. + * Wed Sep 08 2010 Ben Skeggs 2.6.35.4-23 - nouveau: handle certain GPU errors better, AGP + misc fixes diff --git a/linux-2.6-defaults-pci_use_crs.patch b/linux-2.6-defaults-pci_use_crs.patch new file mode 100644 index 000000000..18acee12d --- /dev/null +++ b/linux-2.6-defaults-pci_use_crs.patch @@ -0,0 +1,29 @@ +diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig +index cea0cd9..c326065 100644 +--- a/arch/x86/Kconfig ++++ b/arch/x86/Kconfig +@@ -2142,3 +2142,8 @@ source "crypto/Kconfig" + source "arch/x86/kvm/Kconfig" + + source "lib/Kconfig" ++ ++config PCI_DEFAULT_USE_CRS ++ def_bool y ++ prompt "Use PCI Host Bridge Windows from ACPI by default?" ++ depends on ACPI +diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c +index 15466c0..3099406 100644 +--- a/arch/x86/pci/acpi.c ++++ b/arch/x86/pci/acpi.c +@@ -16,7 +16,11 @@ struct pci_root_info { + int busnum; + }; + ++#ifdef CONFIG_PCI_DEFAULT_USE_CRS + static bool pci_use_crs = true; ++#else ++static bool pci_use_crs = false; ++#endif + + static int __init set_use_crs(const struct dmi_system_id *id) + {