From owner-freebsd-stable@FreeBSD.ORG Fri Jun 23 16:26:31 2006 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DAC3216A47B; Fri, 23 Jun 2006 16:26:31 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4561843D48; Fri, 23 Jun 2006 16:26:31 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 6F40546C72; Fri, 23 Jun 2006 12:26:30 -0400 (EDT) Date: Fri, 23 Jun 2006 17:26:30 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Martin Blapp In-Reply-To: <20060623181014.S14714@godot.imp.ch> Message-ID: <20060623172443.H12942@fledge.watson.org> 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> <20060623181014.S14714@godot.imp.ch> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Patrick Guelat , "Wojciech A. Koszek" , freebsd-stable@freebsd.org Subject: Re: Crash with FreeBSD 6.1 STABLE of today X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Jun 2006 16:26:31 -0000 On Fri, 23 Jun 2006, Martin Blapp wrote: >> 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. I appreciate your confidence in my knowledge, but in fact, I know little about the tty subsystem. I do know that the tty code does currently require Giant, but the tricky bits of a non-MPSAFE subsystem generally aren't the middle bits, but the edges where it interacts with other subsystems. It might be productive to slap GIANT_REQUIRED all over the tty code and see if the assertion fires with INVARIANTS. It would be nice if the answer were simple, but I suspect that it will be more complicated. Robert N M Watson Computer Laboratory University of Cambridge