On Fri, Jun 20, 2008 at 11:27 PM, Vegard Nossum <vegard.nossum@xxxxxxxxx> wrote: > So I guess this function, pnpbios_init() needs the check as well. In > fact, it has this: > > #ifdef CONFIG_PNPACPI > if (!acpi_disabled && !pnpacpi_disabled) { > pnpbios_disabled = 1; > printk(KERN_INFO "PnPBIOS: Disabled by ACPI PNP\n"); > return -ENODEV; > } > #endif /* CONFIG_ACPI */ > > ...I guess that should be changed to say if (acpi_disabled || > pnpacpi_disabled)? Or... I don't understand the purpose of the > original test. But it seems to be there since the beginning of time > (or, well, v2.6.12-rc2). Nope. I found the introduction of the change in the historical git repository: commit 4723ebe898a32262ed49fe677897ccea47e72ff4 Author: Adam Belay <ambx1@xxxxxxxxxx> Date: Sun Oct 24 15:07:32 2004 -0400 [PNPBIOS] disable if ACPI is active As further ACPI pnp functionaility is implemented it is no longer safe to run ACPI and PNPBIOS concurrently. We therefore take the following approach: - attempt to enable ACPI support - if ACPI fails (blacklist etc.) enable pnpbios support - if ACPI support is not compiled in the kernel enable pnpbios support Signed-off-by: Adam Belay <ambx1@xxxxxxxxxx> and now I understand the purpose of the check; pnpbios does not depend on ACPI; ACPI/pnpacpi is incompatible with pnpbios. Yet it remains a fact that pnpbios will discover devices which then ACPI code uses erroneously. Which means that my original fix for Ingo probably is the right one after all. Should I submit another patch which does the right thing for everything under drivers/acpi/, or can you do it on your own? :-) Vegard -- "The animistic metaphor of the bug that maliciously sneaked in while the programmer was not looking is intellectually dishonest as it disguises that the error is the programmer's own creation." -- E. W. Dijkstra, EWD1036 -- 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