Matthew Dillon said: > > Alan and I are working on it. We are testing a fix for pipe_read() now > and I'm working on one for pipe_write(). The fixes basically involve > holding the pipe's lock throughout all calculations and I/O ops except > when the code needs to explicitly tsleep() on a pipe-empty or pipe-full > condition. > > The race conditions in the pipe code can lead to a crash in the case > where you have multiple writers or multiple readers accessing the same > pipe, but should only lead to corruption in certain cases where one reader > and one writer exist. It may or may not be related to your problem. > You are doing the right thing. Once the problem was brought up in the mailing lists, after the quick inspection, the problem is obvious, and the fix isn't too awful complex, when knowing that the problems exists...
It is amazing how things like this can slip by. -- John | Never try to teach a pig to sing, [email protected] | it makes one look stupid [email protected] | and it irritates the pig. To Unsubscribe: send mail to [email protected] with "unsubscribe freebsd-hackers" in the body of the message

