Skip site navigation (1)Skip section navigation (2)
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>