From owner-freebsd-current@FreeBSD.ORG Wed Nov 29 22:32:59 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2E45016A415; Wed, 29 Nov 2006 22:32:59 +0000 (UTC) (envelope-from jb@what-creek.com) Received: from what-creek.com (what-creek.com [66.111.37.70]) by mx1.FreeBSD.org (Postfix) with ESMTP id D588043D53; Wed, 29 Nov 2006 22:31:21 +0000 (GMT) (envelope-from jb@what-creek.com) Received: by what-creek.com (Postfix, from userid 102) id 67D7C140EC03; Wed, 29 Nov 2006 22:32:21 +0000 (GMT) Date: Wed, 29 Nov 2006 22:32:21 +0000 From: John Birrell To: John Baldwin Message-ID: <20061129223221.GA359@what-creek.com> References: <45622068.2050705@student.tue.nl> <200611291204.03716.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200611291204.03716.jhb@freebsd.org> User-Agent: Mutt/1.4.2.1i Cc: jb@freebsd.org, freebsd-current@freebsd.org, Rene Ladan Subject: Re: calcru-triggered panic? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Nov 2006 22:32:59 -0000 On Wed, Nov 29, 2006 at 12:04:03PM -0500, John Baldwin wrote: > On Monday 20 November 2006 16:38, Rene Ladan wrote: > > Hi, > > > > I got the attached panic on CURRENT 2006-11-17. > > > > It was preceded by a lot of 'calcru' messages. > > The calcru messages you can ignore. > > This is the real problem: > > panic: blockable sleep lock (sleep mutex) tty > @ /usr/src-current/sys/kern/kern_event.c:1670 > > This panic is due to the recent changes to printf to try to buffer the printf > output. It now runs cnputc() under a critical section and syscons(4) tries > to do a ttwakeup() which invokes KNOTE() and tries to lock a regular mutex > while inside the critical section. I'm not sure how best to fix this. I would like to go back to using a printf buffer on the stack (like I had in my original implementation). The downside of doing that is that it places more stress on the stack and for things like cam, that is an issue, so I am told. -- John Birrell