[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 2.4.18 + modules + lock up



On Sat 03 Aug 2002, Peter Watkinson wrote:
> Paul Slootman wrote:
> >On Wed 31 Jul 2002, Peter Watkinson wrote:
> > 
> >
> >>oops sorry. System monitor shows xconsole having cpu usage at 99.9%. 
> >>However
> >
> >It might be interesting to find out why xconsole is eating so much
> >time...  Perhaps do a strace on it? It may be having trouble reading its
> >input, so that it's basically doing a busy-wait loop, which is bad.
> 
> tried strace xconsole - what should I be looking for. Did on 2.4.18 and 
> 2.2 kernels and they seem pretty similar. Gone back to 2.2 kernel 
> everything seems to be working fine.

Well, if it's showing CPU usage of 99.9%, then strace should show
xconsole to be pretty busy.  If I attach strace to the running xconsole
(use -p pid) I see something like this:

select(5, [3 4], [], [], NULL)          = 1 (in [4])
read(4, "Aug  4 22:42:05 wurtel ippl: smt"..., 1024) = 70
select(5, [4], [], [], {0, 0})          = 0 (Timeout)
ioctl(3, 0x541b, [0])                   = 0
write(3, "C\0\5\0\21\0`\0\17\0`\0\21\0d\0\5\0\r\0=\0\4\0\21\0`\0"..., 212) = 212
ioctl(3, 0x541b, [0])                   = 0
gettimeofday({1028493725, 706945}, NULL) = 0
select(5, [3 4], [], [], NULL <unfinished ...>

I.e. it only does something when something actually is logged. In the
meantime it's blocked on the select() call waiting for data, so the CPU
usage is absolutely zero at that time.

So, does it do the same when you fire up 2.4...   Unfortunately my alpha
is headless at the moment, so I can't try this at home :-)  If it's
eating time and not showing anything in strace, then it's busy in an
internal loop. But then it won't show select() being waited on either...

Perhaps you didn't notice any difference between 2.2 and 2.4 because you
started up a _separate_ xconsole instead of attaching to the running
xconsole?


Paul Slootman



Reply to: