From owner-freebsd-stable Mon Nov 29 10:22:11 1999 Delivered-To: freebsd-stable@freebsd.org Received: from trooper.velocet.net (trooper.velocet.net [216.126.82.226]) by hub.freebsd.org (Postfix) with ESMTP id 4A79915575 for ; Mon, 29 Nov 1999 10:22:03 -0800 (PST) (envelope-from dgilbert@trooper.velocet.net) Received: (from dgilbert@localhost) by trooper.velocet.net (8.9.3/8.9.3) id NAA73295; Mon, 29 Nov 1999 13:22:03 -0500 (EST) (envelope-from dgilbert) From: David Gilbert MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <14402.50250.717414.95677@trooper.velocet.net> Date: Mon, 29 Nov 1999 13:22:02 -0500 (EST) To: stable@freebsd.org Subject: Repeatable vinum crash. X-Mailer: VM 6.75 under 20.4 "Emerald" XEmacs Lucid Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG So... I'm able to repeat the vinum crash mentioned earlier. It would appear that tsleep() is getting called when curproc = 0. I'm not exactly sure how to correct this. tsleep() seems to make a fair bit of use of the curproc structure... so it wouldn't appear that accepting a NULL there would be a good idea (but can we just return if curproc is NULL --- it looks like the structure of tsleep() doesn't work if you don't have a process to return to) ... so would it then be an interim hack to not call tsleep (effectively spin waiting) if curproc is null? I suppose this would be equivalent. If vinum needs to wait on a lock at this point, and curproc is 0, what is the accepted method? Dave. -- ============================================================================ |David Gilbert, Velocet Communications. | Two things can only be | |Mail: dgilbert@velocet.net | equal if and only if they | |http://www.velocet.net/~dgilbert | are precisely opposite. | =========================================================GLO================ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message