On Wed, 2007-03-07 at 03:00 -0500, Len Brown wrote:
> On Friday 09 February 2007 03:34, Thomas Renninger wrote:
> > On Fri, 2007-02-09 at 00:47 -0500, Len Brown wrote:
> > > Why not simply check acpi_disabled, like other drivers do?
> > >
> > See comment from Dominik when I sent something similar some time ago:
> > http://marc.theaimsgroup.com/?l=linux-acpi&m=114563882012355&w=2
>
> Dominik is right right driver registration should fail w/o
> a check for acpi_disabled. However, we use acpi_disabled all
> over the place already when that is not sufficient, so if we
> need it here, we can use it..
>
> >> [Dominik wrote]
> >> 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.
>
> Blech, so the drivers that can be either native or ACPI can't link
> in native mode unless their ACPI processor driver symbols resolve?
>
> Hmmm. Perhaps we should delete the ACPI part of speedstep_centrino
> now that it is deprecated by acpi-cpufreq? That way it can be
> just a native driver for folks who want to run
> with hard-coded tables and no ACPI.
> Or perhaps at this point we should delete speedstep_centrino entirely?
>
> Looks like powernow-k7.c and powernow-k8.c have the same issue --
> acpi_processor_register_performance() ain't gonna resolve if the acpi
> processor
> driver isn't present. Perhaps they can be split into native and ACPI drivers?
But all this sounds like a lot work?
Can you just add the patch for now, to solve the "oops or whatever bad
happened when booted without acpi and processor module gets unloaded"?
Thanks,
Thomas
> -Len
>
>
> > > On Monday 05 February 2007 19:09, [EMAIL PROTECTED] wrote:
> > > > From: Thomas Renninger <[EMAIL PROTECTED]>
> > > >
> > > > Signed-off-by: Thomas Renninger <[EMAIL PROTECTED]>
> > > > Cc: Len Brown <[EMAIL PROTECTED]>
> > > > Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
> > > > ---
> > > >
> > > > drivers/acpi/processor_core.c | 13 +++++++++----
> > > > 1 file changed, 9 insertions(+), 4 deletions(-)
> > > >
> > > > diff -puN
> > > > drivers/acpi/processor_core.c~exit-acpi-processor-module-gracefully-if-acpi-is-disabled
> > > > drivers/acpi/processor_core.c
> > > > ---
> > > > a/drivers/acpi/processor_core.c~exit-acpi-processor-module-gracefully-if-acpi-is-disabled
> > > > +++ a/drivers/acpi/processor_core.c
> > > > @@ -994,6 +994,8 @@ void acpi_processor_uninstall_hotplug_no
> > > > * ACPI, but needs symbols from this driver
> > > > */
> > > >
> > > > +static int processor_driver_registered;
> > > > +
> > > > static int __init acpi_processor_init(void)
> > > > {
> > > > int result = 0;
> > > > @@ -1019,6 +1021,8 @@ static int __init acpi_processor_init(vo
> > > > return result;
> > > > }
> > > >
> > > > + processor_driver_registered = 1;
> > > > +
> > > > acpi_processor_install_hotplug_notify();
> > > >
> > > > acpi_thermal_cpufreq_init();
> > > > @@ -1035,12 +1039,13 @@ static void __exit acpi_processor_exit(v
> > > >
> > > > acpi_thermal_cpufreq_exit();
> > > >
> > > > - acpi_processor_uninstall_hotplug_notify();
> > > > -
> > > > - acpi_bus_unregister_driver(&acpi_processor_driver);
> > > > + if (processor_driver_registered) {
> > > > + acpi_processor_uninstall_hotplug_notify();
> > > >
> > > > - remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir);
> > > > + acpi_bus_unregister_driver(&acpi_processor_driver);
> > > >
> > > > + remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir);
> > > > + }
> > > > return;
> > > > }
> > > >
> > > > _
> > > > -
> > > > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> > > > the body of a message to [EMAIL PROTECTED]
> > > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > > >
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> > the body of a message to [EMAIL PROTECTED]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
> -
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Thomas Renninger
Research and Developement Departement
SUSE LINUX Products GmbH,
Maxfeldstr. 5, D - 90409 Nürnberg
Phone: +49 (0)911 - 740 53 675
e-mail: [EMAIL PROTECTED]
SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html