Subject: Help with xload freaking out
To: None <current-users@NetBSD.ORG>
From: Michael L. VanLoon -- HeadCandy.com <michaelv@MindBender.serv.net>
List: current-users
Date: 11/15/1996 11:12:18
I posted about this many months ago, with not much response. Maybe
some additional info can help shed some light -- maybe not.
If it matters, it's a Pentium, running NetBSD/i386 1.2 (why am I
posting to current? Because this problem existed in current before
1.2, and probably still exists today...)
If it helps, there was a point in current, in the early part of this
year (don't remember exactly, but maybe around Marchish-Aprilish) when
I was seeing this problem a lot more often, and sometimes even xterms
would freak out with the same message (below). Yes, I have upgraded
my XFree86 binaries since then, but at the time, the transition from
never seeing this problem, to seeing it frequently, to seeing it only
occasionally, came while my XFree86 binaries were unchanged, and I was
tracking NetBSD-current updates.
Basically, after xload has been running for several days, sometimes it
just "freaks out". It will start eating all CPU time, and will be
constantly stuffing this into stdout:
Warning: Select failed; error code 22
I ran it under ktrace, and managed to catch it in the act. The ktrace
info is several hundred megabytes, so I'll just include the part where
it first gets the error. Prior to this is normal operation:
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
6774 xload RET select 0
6774 xload CALL gettimeofday(0xf7bfd048,0)
6774 xload RET gettimeofday 0
6774 xload CALL gettimeofday(0xf7bfcfec,0)
6774 xload RET gettimeofday 0
6774 xload CALL __sysctl(0xf7bfcf9c,0x2,0xf7bfcfa8,0xf7bfcfa4,0,0)
6774 xload RET __sysctl 0
6774 xload CALL write(0x3,0x13000,0x40)
6774 xload GIO fd 3 wrote 64 bytes
">\0\a\0\^E\0\0\^C\^E\0\0\^C\^C\0\0\^C\^A\0\0\0\0\0\0\0S\^AW\0=\0\^D\0\^E\0\0\^CS\^A\0\0\^A\
\0W\0F\0\^E\0\^E\0\0\^C\^C\0\0\^CS\^AP\0\^A\0\a\0"
6774 xload RET write 64/0x40
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL read(0x3,0xf7bfc83c,0x20)
6774 xload GIO fd 3 read 32 bytes
"\^N\^C)U\^E\0\0\^C\0\0>\^C\0\0\0\0D\M-U\M-?\M-w\M^G"\a\0\M-82Q\0\M-82Q\0"
6774 xload RET read 32/0x20
6774 xload CALL gettimeofday(0xf7bfd048,0)
6774 xload RET gettimeofday 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL gettimeofday(0xf7bfd008,0)
6774 xload RET gettimeofday 0
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
6774 xload RET select 0
6774 xload CALL gettimeofday(0xf7bfd048,0)
6774 xload RET gettimeofday 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL gettimeofday(0xf7bfd008,0)
6774 xload RET gettimeofday 0
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
6774 xload RET select 0
6774 xload CALL gettimeofday(0xf7bfd048,0)
6774 xload RET gettimeofday 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL ioctl(0x3,FIONREAD,0xf7bfc838)
6774 xload RET ioctl 0
6774 xload CALL gettimeofday(0xf7bfd008,0)
6774 xload RET gettimeofday 0
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
>>>>> I believe this is the transition point, from normal to "freak
>>>>> out" state...
6774 xload RET select -1 errno 22 Invalid argument
6774 xload CALL open(0x10074cc8,0,0x100ac060)
6774 xload NAMI "/usr/X11R6/lib/X11/XtErrorDB"
6774 xload RET open -1 errno 2 No such file or directory
6774 xload CALL write(0x2,0xf7bfc050,0x26)
6774 xload GIO fd 2 wrote 38 bytes
"Warning: Select failed; error code 22
"
6774 xload RET write 38/0x26
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
6774 xload RET select -1 errno 22 Invalid argument
6774 xload CALL write(0x2,0xf7bfc050,0x26)
6774 xload GIO fd 2 wrote 38 bytes
"Warning: Select failed; error code 22
"
6774 xload RET write 38/0x26
6774 xload CALL select(0x4,0xf7bfcfa4,0xf7bfcfc4,0xf7bfcfe4,0xf7bfd018)
6774 xload RET select -1 errno 22 Invalid argument
6774 xload CALL write(0x2,0xf7bfc050,0x26)
6774 xload GIO fd 2 wrote 38 bytes
"Warning: Select failed; error code 22
etc... It continues like this until my hard drive fills up with log
output...
Anyone have any additional insight?
-----------------------------------------------------------------------------
Michael L. VanLoon michaelv@MindBender.serv.net
--< Free your mind and your machine -- NetBSD free un*x >--
NetBSD working ports: 386+PC, Mac 68k, Amiga, Atari 68k, HP300, Sun3,
Sun4/4c/4m, DEC MIPS, DEC Alpha, PC532, VAX, MVME68k, arm32...
NetBSD ports in progress: PICA, others...
-----------------------------------------------------------------------------