Subject: Re: 1.5ZC GENERIC, ipmon not logging correctly
To: None <port-sparc64@netbsd.org>
From: Tomi Nylund <spambait-1@lair.suomi.net>
List: port-sparc64
Date: 06/03/2002 21:13:34
> > Are your kernel and userland in sync? (i.e. are you using GENERIC from
> > the same snapshot as userland?)
>
> Yes, it was (I'm referring to my original post on the subject here) very
> much in sync: it just didn't work. In my mail, you can find some ktraces,
> etc. debugging info related to the problem. If you've lost'em, tell me, and
> I'll repost. I'll try with 1.6A when I have time, and see if it happens
> again.
>
> Tomi
Well, did some retesting with a friend of mine on 1.6_BETA1, and the problem
is still there. We did testing, and it appears that /dev/ipl does not return
the correct value to FIONREAD:
15294 ipmon CALL write(0x6,0x20e000,0x6)
15294 ipmon GIO fd 6 wrote 6 bytes
"15294
"
15294 ipmon RET write 6
15294 ipmon CALL close(0x6)
15294 ipmon RET close 0
15294 ipmon CALL close(0x6)
15294 ipmon RET close -1 errno 9 Bad file descriptor
15294 ipmon CALL __sigaction14(0x1,0xffffffffffffb6b0,0xffffffffffffb690)
This is another bug, unrelated to logging: the pid file opened for reading is
closed twice, hence the "Bad file descriptor".
And here it goes wrong:
15294 ipmon CALL __sigaction14(0x1,0xffffffffffffb6b0,0xffffffffffffb690)
15294 ipmon RET __sigaction14 0
15294 ipmon CALL ioctl(0x3,FIONREAD,0xffffffffffffb79c)
15294 ipmon RET ioctl 0
15294 ipmon CALL ioctl(0x4,FIONREAD,0xffffffffffffb79c)
15294 ipmon RET ioctl 0
15294 ipmon CALL ioctl(0x5,FIONREAD,0xffffffffffffb79c)
15294 ipmon RET ioctl 0
15294 ipmon CALL nanosleep(0xffffffffffffb6c0,0xffffffffffffb6b0)
15294 ipmon RET nanosleep 0
etc. ipmon goes to nanosleep, and tries again every one second. Only problem
being, that FIONREAD does not return anything but zero even if there is data
to be read in /dev/ipl.
Ideas welcome,
Tomi