Crash with FreeBSD 6.1 STABLE of today

Martin Blapp mb at imp.ch
Fri Jun 23 16:11:26 UTC 2006


Hi,

> I'm not sure if t_session is supposed to be protected by the proctree

Correct.

> lock though.  With an initial glance of the code, it would seem odd to
> be protected by the proctree lock, although I can't see any other locks
> Someone with more knowledge of this code will probably know the answer
> to this.
>
> There does seem to be a worrying comment above tty_close (which is the
> only place that t_session seems to be set to NULL):
>
> * XXX our caller should have done `spltty(); l_close(); tty_close();'
> * and l_close() should have flushed, but we repeat the spltty() and
> * the flush in case there are buggy callers.
>
> As I understand it, spltty() is now a no-op.  Does this mean that this
> code is now essentially running without any locks that were used to
> serialise changes to struct tty in days gone by?  Or is the whole tty
> subsystem still running under Giant?

I thought this too. Maybe Robert knows more.

Martin


More information about the freebsd-stable mailing list