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