[PATCH] eeepc-laptop: Fix build failure with HOTPLUG_PCI && !SYSFS (was: [git pull request] ACPI & driver patches for 2.6.31-rc1)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



FYI, there's a post-rc1 build regression with certain configs:

 drivers/built-in.o: In function `pci_hp_deregister':
 (.text+0xb166): undefined reference to `pci_hp_remove_module_link'
 drivers/built-in.o: In function `pci_hp_deregister':
 (.text+0xb19f): undefined reference to `pci_destroy_slot'
 drivers/built-in.o: In function `__pci_hp_register':
 (.text+0xb583): undefined reference to `pci_create_slot'
 drivers/built-in.o: In function `__pci_hp_register':
 (.text+0xb5b1): undefined reference to `pci_hp_create_module_link'
 make: *** [.tmp_vmlinux1] Error 1

Caused by:

| 2b121bc262fa03c94e653b2d44356c2f86c1bcdc is first bad commit
| commit 2b121bc262fa03c94e653b2d44356c2f86c1bcdc
| Date:   Thu Jun 25 13:25:36 2009 +0200
|
|     eeepc-laptop: Register as a pci-hotplug device

The problem is caused by this portion of the commit:

--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -357,6 +357,8 @@ config EEEPC_LAPTOP
        depends on RFKILL || RFKILL = n
        select BACKLIGHT_CLASS_DEVICE
        select HWMON
+       select HOTPLUG
+       select HOTPLUG_PCI if PCI
        ---help---
          This driver supports the Fn-Fx keys on Eee PC laptops.

We never select CONFIG_HOTPLUG_PCI, as it is a non-trivial, 
interactive, many-child-dependencies configuration option.

The select caused partial dependencies to be instantiated by the 
Kconfig language, and allowed the PCI hotplug core code to be built 
without SYSFS - so drivers/pci/slot.c wasnt built but was being 
relied on.

The complexity of select statements is already a warning sign that 
something unusual is done here. They should be avoided generally, 
except for clear-cut 'leaf' modules.

The patch below fixes the build failure by turning the select lines 
into a single 'depends on' line. There's no significant reduction in 
utility of the driver: it already has a list of dependencies, and 
basically all distros enable hotplug-pci anyway.

	Ingo

Signed-off-by: Ingo Molnar <mingo@xxxxxxx>

diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index fee6a40..46dad12 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -355,10 +355,9 @@ config EEEPC_LAPTOP
 	depends on INPUT
 	depends on EXPERIMENTAL
 	depends on RFKILL || RFKILL = n
+	depends on HOTPLUG_PCI
 	select BACKLIGHT_CLASS_DEVICE
 	select HWMON
-	select HOTPLUG
-	select HOTPLUG_PCI if PCI
 	---help---
 	  This driver supports the Fn-Fx keys on Eee PC laptops.
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux