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

Pierre-Luc Drouin pldrouin at pldrouin.net
Tue Nov 22 08:06:55 PST 2005


Hajimu UMEMOTO wrote:

>Hi,
>
>  
>
>>>>>>On Thu, 17 Nov 2005 11:24:16 -0500
>>>>>>Pierre-Luc Drouin <pldrouin at pldrouin.net> said:
>>>>>>            
>>>>>>
>
>  
>
>>Ok, there is new development. I realized by playing with 
>>debug.acpi.disabled="smbat", debug.acpi.disabled="smbat cmbat" and 
>>debug.acpi.disabled="cmbat", that my laptop battery is not a smbat, 
>>but a cmbat. When I played with hw.acpi.battery.info_expire after to 
>>have applied the patch for acpi_smbat.c, it was freezing less often 
>>because that sysctl variable was shared by both cmbat and smbat. So I 
>>can only get battery status from cmbat (disabling cmbat disables the 
>>use of acpiconf -i loop). To get the status of my battery via cmbat 
>>was working fine up to 6.0-RELEASE (included), but makes my laptop to 
>>freeze since I upgraded to 6.0-stable with Nov 10th sources. What 
>>change related to cmbat between 6.0-release and 6.0-stable could be 
>>causing this?
>>    
>>
>
>pldrouin> Has someone found how to fix this problem in -stable?
>
>Perhaps, I found the cause.  acpi_cmbat_get_bif() is heavy process,
>and it was called only when ACPIIO_CMBAT_GET_BIF ioctl was issued
>explicitly, until smbat stuff was committed.  However,
>acpiio_cmbat_get_bif() is called from every
>acpi_battery_get_battinfo() call, now.
>The attached patch will bring back to former behavior.  Please try it
>and let me know the result.
>It is against 7-CURRENT as of today.  If you want to try it on
>6-STABLE, you need to apply following diff before applying it:
>
>  
>
Wonderful! It fixes it!! I applied both patches and everything seams to 
be working fine now!


More information about the freebsd-stable mailing list