On Fri, Apr 21, 2006 at 06:53:46PM +0200, Thomas Renninger wrote: > On Friday 21 April 2006 17:18, Bjorn Helgaas wrote: > > On Friday 21 April 2006 04:43, Thomas Renninger wrote: > > > If booting with acpi=off and loading the processor module, it > > > may happen that the kernel oopses when trying to unload the module again. > > > Better exit all ACPI modules immediately if booted with acpi=off. > > > ... > > > @@ -289,31 +289,28 @@ static int __init acpi_ac_init(void) > > > { > > > int result = 0; > > > > > > - ACPI_FUNCTION_TRACE("acpi_ac_init"); > > > + if (acpi_disabled) > > > + return -ENODEV; > > > > This doesn't feel like the right solution to me. > > acpi_bus_register_driver() already returns -ENODEV > > if acpi_disabled, and that ought to be enough so the > > drivers can handle this correctly. > > > > I don't think we should clutter every ACPI driver with > > the same check for acpi_disabled. > Yes, you are right. > > > > Did you investigate the oops when unloading the processor module? > It's in unregister_driver. > > I wonder if that driver has a bug there. It has a mysterious > > comment that "we keep the driver loaded even when ACPI is not > > running" for powernow-k8. I don't understand that at all, but > > it sounds like it requires extra care to make sure everything > > works right. > AFAIK processor module has no functions if acpi=off. > Some cpufreq drivers still work. The ones which have the steps > for each CPU model compiled in and that should still work. > > There should be no functions missing when booting acpi=off and processor > module cannot be loaded. > But I might be wrong here... > > Hmm, as even proc is deleted, the module probably should not be loaded... > > I think this one should go in then: > > Subject: Exit ACPI processor module if acpi is disabled No. For example powernow-k8 and speedstep-centrino do have a dependency on a function which is exported by processor_perflib.c. THis means you cannot load these modules (which can run without ACPI support) if loading the processor module fails. Therefore its init function must not fail. Dominik - 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