Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Jun 2006 18:11:15 +0200 (CEST)
From:      Martin Blapp <mb@imp.ch>
To:        Gavin Atkinson <gavin.atkinson@ury.york.ac.uk>
Cc:        Robert Watson <rwatson@freebsd.org>, Patrick Guelat <patg@imp.ch>, "Wojciech A. Koszek" <wkoszek@freebsd.org>, freebsd-stable@freebsd.org
Subject:   Re: Crash with FreeBSD 6.1 STABLE of today
Message-ID:  <20060623181014.S14714@godot.imp.ch>
In-Reply-To: <1151078632.62769.30.camel@buffy.york.ac.uk>
References:  <20060621202508.S17514@godot.imp.ch> <20060621193941.Y8526@fledge.watson.org> <20060622205806.GA6542@FreeBSD.czest.pl> <20060622223630.V17514@godot.imp.ch> <1151056731.62769.2.camel@buffy.york.ac.uk> <20060623133915.S14714@godot.imp.ch> <1151078632.62769.30.camel@buffy.york.ac.uk>

next in thread | previous in thread | raw e-mail | index | archive | help

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060623181014.S14714>