Date: Sun, 25 Jan 2004 15:39:07 +0100 From: Bjoern Fischer <bfischer@Techfak.Uni-Bielefeld.DE> To: Stephan Uphoff <ups@stups.com> Cc: current@freebsd.org Subject: Re: getblk(): panic: lockmgr: locking against myself Message-ID: <20040125143907.GA460@frolic.no-support.loc> In-Reply-To: <200312211039.FAA21799@stups.com> References: <Pine.NEB.3.96L.1031220185744.19796K-100000@fledge.watson.org> <200312211039.FAA21799@stups.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello, > This looks like a ufs2 snapshot bug when initializing more > inodes in a cylinder group. > bawrite for newly initialized inode block is called while the thread > still owns the cylinder group block. > The snapshot copy-on-write code tries to save the old (uninitialized) > block and might need the cg block to do so => panic. > > Not saving the uninitialized inode block does not look like an > option as inode access functions do not check the cg for cg_initediblk. > > The ugly patch below calls the bawrite for the inode block after > it releases (bdwrites) the cg block and should prevent the panic. is this issue resolved already? I just got a panic with latest -CURRENT that looks exactly the same. The machine paniced while performing background fsck on a very busy file system. If I can reproduce the panic I will try your patch. Bjoern -- -----BEGIN GEEK CODE BLOCK----- GCS d--(+) s++: a- C+++(-) UB++++OSI++++$ P+++(-) L---(++) !E W- N+ o>+ K- !w !O !M !V PS++ PE- PGP++ t+++ !5 X++ tv- b+++ D++ G e+ h-- y+ ------END GEEK CODE BLOCK------
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040125143907.GA460>