no way to force AC state if current one is none

Nate Lawson nate at root.org
Tue Feb 12 08:29:05 UTC 2008


Andriy Gapon wrote:
> on 01/02/2008 18:13 Andriy Gapon said the following:
>> I noticed that I can force AC state change via sysctl if current state
>> is none/-1.
> 
> Typo above, it should read "I can not".
> 
>> acpi_tz_monitor() has the following lines:
>>
>> /* Handle user override of active mode */
>> if (sc->tz_requested != TZ_ACTIVE_NONE && sc->tz_requested < newactive)
>>     newactive = sc->tz_requested;
>>
>> If say tz_requested is 1, but auto-calculated newactive is -1 (none),
>> then this check fails and tz_requested is ignored.
> 
> Small extra note: this is because the "none" state (least/zero cooling
> activity) has code -1, while other states are arranged so that the lower
> the number the higher cooling activity is. So there is an exclusion from
> normal integer comparison.
> 
>> It seems there should be a check that newactive is not -1:
>> if (sc->tz_requested != TZ_ACTIVE_NONE && (newactive == TZ_ACTIVE_NONE
>> || sc->tz_requested < newactive))
>>
>> What do you think ?
> 
> Should I file a PR ? Does anybody care ?
> I think that this is a possible situation to want this in real life.

Don't file a PR, I'll review what you sent.  Thanks for both bug 
fixes/hunting.

-- 
Nate


More information about the freebsd-acpi mailing list