|
From: Julian S. <js...@ac...> - 2005-03-17 12:25:57
|
Is FC3 LinuxThreads or NPTL ? If NPTL, do you have a LinuxThreads
system you can try reproducing this on? Is setting LD_ASSUME_KERNEL=2.4.1
really exactly the same as running it on a LinuxThreads-only system?
> Hard to tell, really. To be honest, it looks like an application bug.
> Two threads remain; thread 2 is the LinuxThreads manager thread, so it
> isn't going to go away until the other thread, thread 5, dies. Thread 5
> seems to just be looping waiting for an FD which never happens. It
> would be interesting to attach strace to thread 5 in this state to see
> what FD it is actually waiting on.
It looks like fd 12.
poll([{fd=12, events=POLLIN}], 1, 1000) = 0
rt_sigprocmask(SIG_SETMASK, ~[ILL TRAP BUS FPE KILL SEGV STOP], NULL, 8) = 0
gettid() = 10505
read(1017, "T", 2) = 1
getpid() = 10505
write(1016, "SYSCALL[10505,5](168) --> 0 (0x0"..., 34) = 34
getpid() = 10505
write(1016, "SYSCALL[10505,5]( 78):", 22) = 22
write(1016, "sys_gettimeofday ( 0xAEFFFA04, 0"..., 36) = 36
gettimeofday({1111060117, 380070}, NULL) = 0
write(1016, " --> 0 (0x0)\n", 13) = 13
getpid() = 10505
write(1016, "SYSCALL[10505,5](168) mayBlock:", 31) = 31
write(1016, "sys_poll ( 0xAEFFF94C, 1, 1000 )"..., 33) = 33
write(1016, " --> ...\n", 9) = 9
gettid() = 10505
write(1018, "T", 1) = 1
rt_sigprocmask(SIG_SETMASK, [RTMIN RT_31], ~[ILL TRAP BUS FPE KILL SEGV
STOP], 8) = 0
poll(
In the (non-truncated version of the) log I sent yesterday,
fd 12 is used many times (open, mmap, close). The last
place it appears to have been *created* is
SYSCALL[4719,1](102) mayBlock:sys_socketcall ( 1, 0xAFEFCD40 ) --> ...
SYSCALL[4719,1](102) --> 12 (0xC)
The last place I can see it referenced is:
SYSCALL[4743,5]( 54) mayBlock:sys_ioctl ( 12, 0x541B (type=54, nr=1B, size=0),
0x2D ) --> ...
SYSCALL[4743,5]( 54) --> 0 (0x0)
SYSCALL[4743,5]( 3) mayBlock:sys_read ( 12, 0xAEFFF0F4, 128 ) --> ...
SYSCALL[4743,5]( 3) --> 128 (0x80)
SYSCALL[4743,5]( 54) mayBlock:sys_ioctl ( 12, 0x541B (type=54, nr=1B, size=0),
0x2D ) --> ...
SYSCALL[4743,5]( 54) --> 0 (0x0)
So I'm none the wiser.
Ioctl 0x541B is FIONREAD.
I'd prefer not to ship 2.4.0 with this bug in, if we can resolve it
relatively quickly. What else can I do to help you repro it?
J
|