From owner-freebsd-stable@FreeBSD.ORG Fri Jan 13 09:26:15 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 32DEC16A41F for ; Fri, 13 Jan 2006 09:26:15 +0000 (GMT) (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 BA44143D46 for ; Fri, 13 Jan 2006 09:26:14 +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 5E34246B7D; Fri, 13 Jan 2006 04:26:13 -0500 (EST) Date: Fri, 13 Jan 2006 09:26:27 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Kris Kennaway In-Reply-To: <20060113071932.GA62526@xor.obsecurity.org> Message-ID: <20060113092535.I38874@fledge.watson.org> References: <200601051154.32092.doconnor@gsoft.com.au> <20060111210323.G28748@fledge.watson.org> <20060113071932.GA62526@xor.obsecurity.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-stable@freebsd.org Subject: Re: RELENG_6 devfs problem 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, 13 Jan 2006 09:26:15 -0000 On Fri, 13 Jan 2006, Kris Kennaway wrote: >> What can I do to try and debug it? >> >> Do you use devfs rule sets? I fixed a bug a week or so ago in devfs_rule.c >> in HEAD, and MFC'd the fix today. The symptoms are much what you describe, >> and occur when an invalid rule is proposed -- the right error is returned, >> but a lock is not released resulting in it being unavailable when processes >> try to access device nodes, resulting in eventual deadlock. It's >> devfs_rule.c:1.21 in HEAD, and devfs_rule.c:1.14.2.3 in RELENG_6. I belive >> the bug does not exist in RELENG_5, as there were significant changes in >> devfs locking for 6.0, and those haven't been merged to RELENG_5. >> >> If this doesn't fix it, the normal debugging steps apply -- compile in DDB, >> BREAK_TO_DEBUGGER, and WITNESS. When the wedge occurs, dump the lock state >> (show alllocks), and we'll see if we can track down the problem. > > I don't use rulesets, and I encountered the same problem when using minicom > to talk to serial ports. I didn't yet have time to debug it, but I can > provide instructions for repeating it. I may or may not have time to dig in, but if you could file the details in a PR (if you haven't already) I can try and take a look. Another similar lock leak wouldn't surprise me. "show alllocks" in DDB once the wedge had happened would be very helpful. Robert N M Watson