Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 May 2008 01:38:58 +0200
From:      Henrik Brix Andersen <brix@FreeBSD.org>
To:        freebsd-current@freebsd.org
Subject:   sleepable after non-sleepable LORs
Message-ID:  <20080502233857.GA24200@tirith.brixandersen.dk>

next in thread | raw e-mail | index | archive | help

--huq684BweRXVnRxX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hi,

I'm seeing a few LORs in -CURRENT from today when VFS attempts to
mount the root filesystem.

Full dmesg is available at http://people.freebsd.org/~brix/lor-1.txt -
LORs included below:

May  2 14:07:41 lothlorien kernel: lock order reversal: (sleepable after no=
n-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3e4d020 struct mount mtx (struct =
mount mtx) @ /usr/src/sys/kern/vfs_subr.c:338
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e4d000 vfslock (vfslock) @ /usr/=
src/sys/kern/vfs_subr.c:365
May  2 14:07:41 lothlorien kernel: KDB: stack backtrace:
May  2 14:07:41 lothlorien kernel: db_trace_self_wrapper(c0873465,e23c8b80,=
c065781a,c0875b35,c3e4d000,...) at db_trace_self_wrapper+0x26
May  2 14:07:41 lothlorien kernel: kdb_backtrace(c0875b35,c3e4d000,c087ba23=
,c087ba23,c087bfbb,...) at kdb_backtrace+0x29
May  2 14:07:41 lothlorien kernel: witness_checkorder(c3e4d000,1,c087bfbb,1=
6d,e23c8be0,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: __lockmgr_args(c3e4d000,200100,c3e4d020,=
0,0,...) at __lockmgr_args+0x212
May  2 14:07:41 lothlorien kernel: vfs_busy(c3e4d000,200,0,c39f3000,1,...) =
at vfs_busy+0x1b4
May  2 14:07:41 lothlorien kernel: vfs_mount_alloc(0,c08be660,c087bd61,c39f=
3000,c0691d03,...) at vfs_mount_alloc+0x78
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,43=
9e3000,...) at vfs_mountroot+0x253
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0=
000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_e=
xit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip =3D 0, esp =3D 0xe23c8d7=
0, ebp =3D 0 ---

May  2 14:07:41 lothlorien kernel: lock order reversal: (sleepable after no=
n-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3e542a8 vnode interlock (vnode in=
terlock) @ /usr/src/sys/fs/devfs/devfs_vnops.c:197
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e54288 devfs (devfs) @ /usr/src/=
sys/kern/vfs_subr.c:2046
May  2 14:07:41 lothlorien kernel: KDB: stack backtrace:
May  2 14:07:41 lothlorien kernel: db_trace_self_wrapper(c0873465,e23c8ab0,=
c065781a,c0875b35,c3e54288,...) at db_trace_self_wrapper+0x26
May  2 14:07:41 lothlorien kernel: kdb_backtrace(c0875b35,c3e54288,c08661a4=
,c08661a4,c087bfbb,...) at kdb_backtrace+0x29
May  2 14:07:41 lothlorien kernel: witness_checkorder(c3e54288,9,c087bfbb,7=
fe,c08906ae,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: __lockmgr_args(c3e54288,80100,c3e542a8,0=
,0,0,c087bfbb,7fe) at __lockmgr_args+0x738
May  2 14:07:41 lothlorien kernel: vop_stdlock(e23c8b94,c0866381,c084d4d7,8=
0100,c3e54230,...) at vop_stdlock+0x5c
May  2 14:07:41 lothlorien kernel: VOP_LOCK1_APV(c08be6e0,e23c8b94,c08f4a00=
,c3e54230,80100,...) at VOP_LOCK1_APV+0xab
May  2 14:07:41 lothlorien kernel: _vn_lock(c3e54230,80100,c087bfbb,7fe,c08=
66381,...) at _vn_lock+0x5e
May  2 14:07:41 lothlorien kernel: vget(c3e54230,80100,c39f3000,c6,c3e51254=
,...) at vget+0x9c
May  2 14:07:41 lothlorien kernel: devfs_allocv(c3e53180,c3e4d000,e23c8c24,=
c39f3000,c39f30a4,...) at devfs_allocv+0x117
May  2 14:07:41 lothlorien kernel: devfs_root(c3e4d000,80000,c09631f8,c39f3=
000,4,...) at devfs_root+0x51
May  2 14:07:41 lothlorien kernel: set_rootvnode(c09631e0,0,c087b920,5f6,c0=
691d03,...) at set_rootvnode+0x2d
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,43=
9e3000,...) at vfs_mountroot+0x331
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0=
000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_e=
xit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip =3D 0, esp =3D 0xe23c8d7=
0, ebp =3D 0 ---

May  2 14:07:41 lothlorien kernel: lock order reversal:
May  2 14:07:41 lothlorien kernel: 1st 0xc3e54288 devfs (devfs) @ /usr/src/=
sys/kern/vfs_subr.c:2046
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e51254 devfsmount (devfsmount) @=
 /usr/src/sys/fs/devfs/devfs_vnops.c:201
May  2 14:07:41 lothlorien kernel: KDB: stack backtrace:
May  2 14:07:41 lothlorien kernel: db_trace_self_wrapper(c0873465,e23c8bb8,=
c065781a,c0875b35,c3e51254,...) at db_trace_self_wrapper+0x26
May  2 14:07:41 lothlorien kernel: kdb_backtrace(c0875b35,c3e51254,c0866340=
,c0866340,c0866381,...) at kdb_backtrace+0x29
May  2 14:07:41 lothlorien kernel: witness_checkorder(c3e51254,9,c0866381,c=
9,c7,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: _sx_xlock(c3e51254,0,c0866381,c9,c3e5125=
4,...) at _sx_xlock+0x77
May  2 14:07:41 lothlorien kernel: devfs_allocv(c3e53180,c3e4d000,e23c8c24,=
c39f3000,c39f30a4,...) at devfs_allocv+0x13c
May  2 14:07:41 lothlorien kernel: devfs_root(c3e4d000,80000,c09631f8,c39f3=
000,4,...) at devfs_root+0x51
May  2 14:07:41 lothlorien kernel: set_rootvnode(c09631e0,0,c087b920,5f6,c0=
691d03,...) at set_rootvnode+0x2d
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,43=
9e3000,...) at vfs_mountroot+0x331
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0=
000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_e=
xit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip =3D 0, esp =3D 0xe23c8d7=
0, ebp =3D 0 ---
May  2 14:07:41 lothlorien kernel: Trying to mount root from ufs:/dev/ad4s2a
May  2 14:07:41 lothlorien kernel: WARNING: / was not properly dismounted

May  2 14:07:41 lothlorien kernel: lock order reversal: (sleepable after no=
n-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3d83ee8 bufobj interlock (bufobj =
interlock) @ /usr/src/sys/kern/vfs_bio.c:2442
May  2 14:07:41 lothlorien kernel: 2nd 0xd7a56088 bufwait (bufwait) @ /usr/=
src/sys/kern/vfs_bio.c:2456
May  2 14:07:41 lothlorien kernel: KDB: stack backtrace:
May  2 14:07:41 lothlorien kernel: db_trace_self_wrapper(c0873465,e23c87b0,=
c065781a,c0875b35,d7a56088,...) at db_trace_self_wrapper+0x26
May  2 14:07:41 lothlorien kernel: kdb_backtrace(c0875b35,d7a56088,c087a912=
,c087a912,c0879ec1,...) at kdb_backtrace+0x29
May  2 14:07:41 lothlorien kernel: witness_checkorder(d7a56088,9,c0879ec1,9=
98,e23c8810,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: __lockmgr_args(d7a56088,81900,c3d83ee8,c=
087a86e,50,...) at __lockmgr_args+0x738
May  2 14:07:41 lothlorien kernel: getblk(c3d83e38,0,0,800,0,...) at getblk=
+0x144
May  2 14:07:41 lothlorien kernel: breadn(c3d83e38,0,0,800,0,...) at breadn=
+0x44
May  2 14:07:41 lothlorien kernel: bread(c3d83e38,0,0,800,0,...) at bread+0=
x4c
May  2 14:07:41 lothlorien kernel: ffs_blkatoff(c3d83e38,0,0,0,e23c89b0,...=
) at ffs_blkatoff+0xc6
May  2 14:07:41 lothlorien kernel: ufs_lookup(e23c89f0,c3d83e38,e23c8b54,c3=
d83e38,e23c8a10,...) at ufs_lookup+0x2be
May  2 14:07:41 lothlorien kernel: VOP_CACHEDLOOKUP_APV(c08ddfe0,e23c89f0,e=
23c8b54,e23c8b40,c08f46a0,...) at VOP_CACHEDLOOKUP_APV+0xa0
May  2 14:07:41 lothlorien kernel: vfs_cache_lookup(e23c8a70,e23c8a70,0,c3d=
83e38,80000,...) at vfs_cache_lookup+0xc3
May  2 14:07:41 lothlorien kernel: VOP_LOOKUP_APV(c08ddfe0,e23c8a70,c087b6c=
e,1b0,e23c8b40,...) at VOP_LOOKUP_APV+0xaa
May  2 14:07:41 lothlorien kernel: lookup(e23c8b28,c087b6ce,d8,c0,c39c372c,=
=2E..) at lookup+0x50a
May  2 14:07:41 lothlorien kernel: namei(e23c8b28,e23c8b2c,c0657038,c06116d=
d,c0962a50,...) at namei+0x3d3
May  2 14:07:41 lothlorien kernel: kern_unlinkat(c39f3000,ffffff9c,c087bd5d=
,1,e23c8c60,...) at kern_unlinkat+0x3f
May  2 14:07:41 lothlorien kernel: kern_unlink(c39f3000,c087bd5d,1,631,0,..=
=2E) at kern_unlink+0x27
May  2 14:07:41 lothlorien kernel: vfs_mountroot_try(c087bf17,c084d4d9,c086=
3f29,1,c0691d03,...) at vfs_mountroot_try+0x46b
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,43=
9e3000,...) at vfs_mountroot+0x3f1
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0=
000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_e=
xit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip =3D 0, esp =3D 0xe23c8d7=
0, ebp =3D 0 ---

--=20
Henrik Brix Andersen <brix@FreeBSD.org>

--huq684BweRXVnRxX
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (FreeBSD)
Comment: GnuPG signed

iEYEARECAAYFAkgbphEACgkQv+Q4flTiePjG/ACfXbbDdIcqV8gcI5Ux+Dx3FJ5i
MJIAnjhRngrpK68XlRicOui+eYDzpqbe
=xeht
-----END PGP SIGNATURE-----

--huq684BweRXVnRxX--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080502233857.GA24200>