Re: Fix for thread+network crashes in 2.0/2.1?

Linus Torvalds (torvalds@transmeta.com)
Fri, 27 Feb 1998 09:24:55 -0800 (PST)


On Fri, 27 Feb 1998, William T. Waters wrote:
>
> Thanks for the patch, Linus.
>
> This seems to be a definite improvement -- I was able to keep our box
> up under moderate load for about 10 minutes before it went down hard again,
> which is about a 20-fold improvement.

Damn, I thought I had this one nailed..

> It's unclear to me whether this crash is the same problem or a different one--
> the kernel oopses did look different, but unfortunately they weren't being
> logged to a file.

Could you please to try write them down by hand (yes, I know it is
extremely horrible to do) and write them back in once you reboot to run
ksymoops on them to get a symbolic trace?

The fact that you saw problems implies that your threads _are_ closing
files that are still in use by another thread, and it is possible that
"select()" was only one of the uses. The pre-89-3 kernel protects read(),
write() and select() (read/write have been there "forever"), but there are
other cases that it might not protect against (FASYNC comes to mind: can
you think of what operations your application would be using on the
sockets it has open in threads?).

This may explain why the test-program posted doesn't have problems (it
probably only does selects), but your load may have different patterns.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu