Hi,
I noticed that the moused(8) process had accumulated about
one minute of CPU time, after only three days of uptime.
That's really a lot, given the fact that this server
doesn't have a mouse connected at all. :-) Well, it is
connected to a KVM switch, but it was never used since the
last reboot. Accoding to "vmstat -i" psm0 received zero
interrupts. So I really wonder why it has consumed that
much CPU time.
So I tried to strace the process, and got an endless series
of these:
15:22:31.017275 gettimeofday({...}, NULL) = 0
15:22:31.017386 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.038275 gettimeofday({...}, NULL) = 0
15:22:31.038386 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.059276 gettimeofday({...}, NULL) = 0
15:22:31.059387 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.080275 gettimeofday({...}, NULL) = 0
15:22:31.080387 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.101276 gettimeofday({...}, NULL) = 0
15:22:31.101387 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.122276 gettimeofday({...}, NULL) = 0
15:22:31.122388 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.143275 gettimeofday({...}, NULL) = 0
15:22:31.143386 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.164276 gettimeofday({...}, NULL) = 0
15:22:31.164388 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
15:22:31.185276 gettimeofday({...}, NULL) = 0
15:22:31.185387 select(1024, [?], NULL, NULL, {...}) = 0 (Timeout)
.. and so on.
So it seems to call select(2) with a 0.02s timeout and
then gettimeofday(2) within a loop. 50 times per second.
Without doing anything useful (remember there's no mouse
device connected and zero interrupts occuring).
Is that normal, or is it a bug? For now I have killed and
disabled moused(8) on all machines in the server farm, but
it is somewhat inconvenient to have to start moused(8)
manually each time a server is switched onto the KVM.
Best regards
Oliver
PS: Just in case it matters (these are all the defaults):
kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 }
kern.timecounter.choice: TSC(-100) HPET(2000) ACPI-fast(1000) i8254(0)
dummy(-1000000)
kern.timecounter.hardware: HPET
--
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606, Gesch?ftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht M?n-
chen, HRB 125758, Gesch?ftsf?hrer: Maik Bachmann, Olaf Erb, Ralf Gebhart
FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd
It's trivial to make fun of Microsoft products,
but it takes a real man to make them work,
and a God to make them do anything useful.