Performance problem since updating from 6.0-RELEASE to 6.0-STABLE last friday

Nate Lawson nate at root.org
Tue Nov 15 11:49:17 PST 2005


Pierre-Luc Drouin wrote:
> Hajimu UMEMOTO wrote:
>>>>>>> On Mon, 14 Nov 2005 12:40:36 -0500
>>>>>>> Pierre-Luc Drouin <pldrouin at pldrouin.net> said:
>> pldrouin> Yep, smart battery is definately the problem. The 
>> performance of my pldrouin> laptop is back to normal when I remove the 
>> xfce4-battery-plugin. pldrouin> acpiconf -i loop reproduces the 
>> problem for me too. So it looks like pldrouin> there is something 
>> wrong in smart battery.
>>
>> The cmbat has similar issue on some laptops.  So, acpi_cmbat.c uses
>> cache for retrieval to reduce its influence, and its expiration
>> time is set by hw.acpi.battery.info_expire.
>> However, acpi_smbat.c doesn't use cache.  So, I made a patch.  Since I
>> don't have a laptop which has smbat, I cannot test it by myself.
>> Please test it and let me know the result.
>>  
>>
> The patch seams to do its job correctly, but it is still very annoying 
> to have the whole computer to freeze for 1 second when the cache 
> expires. What does make the whole system to freeze? Before the code was 
> changed in 6.0-stable, FreeBSD was able to read the battery status 
> without freezing my laptop... I have been running 3 OSes (FreeBSD, 
> Ubuntu and Win XP) on my laptop for a while and never experienced that 
> kind of problem with either Linux or Win XP. I guess there is something 
> wrong in the new code added after 6.0-release.

If you have both smbat and cmbat, just disable smbat if you don't like 
it.  Add this to /boot/loader.conf:

debug.acpi.disabled="smbat"

The pause is related to a buggy or slow EC.  Caching the values happens 
to hide it.  Do you get pauses with smbat disabled (see above for how to 
do this)?  Can you still get battery status from cmbat?

-- 
Nate


More information about the freebsd-stable mailing list