Subject: Re: sysmon uses more power
To: Iain Hibbert <plunky@rya-online.net>
From: Juan RP <juan@xtrarom.org>
List: tech-kern
Date: 09/25/2007 00:36:00
On Sun, 23 Sep 2007 10:50:19 +0100 (BST)
Iain Hibbert <plunky@rya-online.net> wrote:

> Hi,
>    I noticed after updating kernel recently that when my laptop is
> otherwise quiescent (eg left on overnight), the fan is coming on every 20
> seconds or so as if there is some CPU intensive task running. previously I
> could tell when a build had finished by the lack of noise..
> 
> looking at the output from 'top -tSd1':
> 
> load averages:  0.01,  0.01,  0.05    up 0 days, 17:24   09:04:40
> 59 threads:    1 idle, 57 sleeping, 1 on processor
> CPU states:     % user,     % nice,     % system,     % interrupt,     % idle
> Memory: 112M Act, 71M Inact, 708K Wired, 15M Exec, 130M File, 41M Free
> Swap: 256M Total, 3256K Used, 253M Free
> 
>   PID   LID USERNAME PRI STATE      TIME   WCPU    CPU COMMAND      NAME
>     0     3 root      27 smtaskq    3:00  1.12%  1.12% [system]     sysmon
>   246     1 root     -14 select    19:46  0.00%  0.00% XFree86      -
>   408     1 plunky   -14 select     1:46  0.00%  0.00% icewm        -
>     0    20 root      18 syncer     0:10  0.00%  0.00% [system]     ioflush
>  1866     1 plunky   -14 select     0:06  0.00%  0.00% gnome-vfs-da -
>     0    14 root     -22 envsysev   0:05  0.00%  0.00% [system]     envsysev
>   493     1 plunky   -14 select     0:04  0.00%  0.00% screen-4.0.3 -
>  3550     1 plunky   -14 select     0:03  0.00%  0.00% xterm        -
>     0    23 root      -6 physiod    0:01  0.00%  0.00% [system]     physiod
>   802     1 plunky   -14 select     0:01  0.00%  0.00% gconfd-2     -
>  2332     1 plunky   -14 select     0:01  0.00%  0.00% screen-4.0.3 -
>     0     2 root     106 IDLE       0:00  0.00%  0.00% [system]     idle/0
>  4343     1 plunky    28 CPU        0:00  0.00%  0.00% top          -
>     0    15 root      10 usbevt     0:00  0.00%  0.00% [system]     usb1
>     0    17 root      10 usbevt     0:00  0.00%  0.00% [system]     usb2
>     0    13 root      10 cardslot   0:00  0.00%  0.00% [system]     cardslot1
>     0    12 root      10 cardslot   0:00  0.00%  0.00% [system]     cardslot0
>     0    11 root      10 pmsreset   0:00  0.00%  0.00% [system]     pms0
> 
> I see that the [sysmon] task is using significant amounts of cpu time; is
> this proper?

The acpibat(4) and acpitz(4) drivers were modified to check for state
changes via sysmon_envsys(9), and there's a callout that checks
for any change on them each 10 seconds by default.

You can change it in kern.envsys.refresh_timeout, does that solve your
problem?

I added them because otherwise you won't be notified if a zone gets
hot/critical or if the battery is in critical/low state.

Take a look at acpibat(4), acpitz(4) and powerd(8) (the manpages).

-- 
Juan Romero Pardines 	- The NetBSD Project
http://plog.xtrarom.org 	- NetBSD/pkgsrc news in Spanish