Re: APM shutdown oops (Re: [stable] [patch 09/12] Fix SMP poweroff hangs)

Adrian Bunk
2007-10-11T23:27:35Z

On Thu, Oct 11, 2007 at 02:42:01PM -0400, Jeff Garzik wrote:
> Linus Torvalds wrote:
>> On Wed, 10 Oct 2007, Kevin wrote:
>>> The last kernel I used was 6.2.22 the "dmesg" the file is attached:
>>>
>>> dmesg 2.6.22 line 158 > apm: overridden by ACPI.
>>>
>>> dmesg, APM on, has no line > apm: overridden by ACPI.
>> Ok, this is the real reason. The APM code does:
>> if (PM_IS_ACTIVE()) {
>> printk(KERN_NOTICE "apm: overridden by ACPI.\n");
>> apm_info.disabled = 1;
>> return -ENODEV;
>> }
>> and in previous kernels that would notice that you have ACPI enabled, and
>> APM gets shut out, and you never see your buggy APM BIOS.
>> In 2.6.23, this apparently doesn't happen for some reason.
>> And I think I see the problem: it's a config change. You don't have
>> PM_LEGACY enabled. Your config file diff shows:
>> -CONFIG_PM_LEGACY=y
>> +# CONFIG_PM_LEGACY is not set
>> I suspect we should make CONFIG_APM either depend on, or select,
>> PM_LEGACY. But as far as I can see, nothing has actually changed in this
>> area in the kernel, and this bug has been there before - just your config
>> change made it appear. Rafael? Stephen? Opinions? I'd think that making
>> APM depend on CONFIG_PM_LEGACY is the right thing to do these days..
>
> Speaking as the author of
>
> [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h
>
> I agree. arch/i386/kernel/apm.c clearly requires include/linux/pm_legacy.h
> and the legacy PM API.
>
> I would vote for a dependency rather than select, but don't have any strong
> feelings on the matter...

It should be a select since a dependency would make it needlessly hard
for kconfig users to find the APM option.

> Jeff

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed