sleepable after non-sleepable LORs

From: Henrik Brix Andersen <brix_at_FreeBSD.org>
Date: Sat, 3 May 2008 01:38:58 +0200
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 non-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3e4d020 struct mount mtx (struct mount mtx) _at_ /usr/src/sys/kern/vfs_subr.c:338
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e4d000 vfslock (vfslock) _at_ /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,16d,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,c39f3000,c0691d03,...) at vfs_mount_alloc+0x78
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,439e3000,...) at vfs_mountroot+0x253
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_exit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip = 0, esp = 0xe23c8d70, ebp = 0 ---

May  2 14:07:41 lothlorien kernel: lock order reversal: (sleepable after non-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3e542a8 vnode interlock (vnode interlock) _at_ /usr/src/sys/fs/devfs/devfs_vnops.c:197
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e54288 devfs (devfs) _at_ /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,7fe,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,80100,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,c0866381,...) 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,c39f3000,4,...) at devfs_root+0x51
May  2 14:07:41 lothlorien kernel: set_rootvnode(c09631e0,0,c087b920,5f6,c0691d03,...) at set_rootvnode+0x2d
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,439e3000,...) at vfs_mountroot+0x331
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_exit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip = 0, esp = 0xe23c8d70, ebp = 0 ---

May  2 14:07:41 lothlorien kernel: lock order reversal:
May  2 14:07:41 lothlorien kernel: 1st 0xc3e54288 devfs (devfs) _at_ /usr/src/sys/kern/vfs_subr.c:2046
May  2 14:07:41 lothlorien kernel: 2nd 0xc3e51254 devfsmount (devfsmount) _at_ /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,c9,c7,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: _sx_xlock(c3e51254,0,c0866381,c9,c3e51254,...) 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,c39f3000,4,...) at devfs_root+0x51
May  2 14:07:41 lothlorien kernel: set_rootvnode(c09631e0,0,c087b920,5f6,c0691d03,...) at set_rootvnode+0x2d
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,439e3000,...) at vfs_mountroot+0x331
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_exit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip = 0, esp = 0xe23c8d70, ebp = 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 non-sleepable)
May  2 14:07:41 lothlorien kernel: 1st 0xc3d83ee8 bufobj interlock (bufobj interlock) _at_ /usr/src/sys/kern/vfs_bio.c:2442
May  2 14:07:41 lothlorien kernel: 2nd 0xd7a56088 bufwait (bufwait) _at_ /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,998,e23c8810,...) at witness_checkorder+0x6b0
May  2 14:07:41 lothlorien kernel: __lockmgr_args(d7a56088,81900,c3d83ee8,c087a86e,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+0x4c
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,c3d83e38,e23c8a10,...) at ufs_lookup+0x2be
May  2 14:07:41 lothlorien kernel: VOP_CACHEDLOOKUP_APV(c08ddfe0,e23c89f0,e23c8b54,e23c8b40,c08f46a0,...) at VOP_CACHEDLOOKUP_APV+0xa0
May  2 14:07:41 lothlorien kernel: vfs_cache_lookup(e23c8a70,e23c8a70,0,c3d83e38,80000,...) at vfs_cache_lookup+0xc3
May  2 14:07:41 lothlorien kernel: VOP_LOOKUP_APV(c08ddfe0,e23c8a70,c087b6ce,1b0,e23c8b40,...) at VOP_LOOKUP_APV+0xaa
May  2 14:07:41 lothlorien kernel: lookup(e23c8b28,c087b6ce,d8,c0,c39c372c,...) at lookup+0x50a
May  2 14:07:41 lothlorien kernel: namei(e23c8b28,e23c8b2c,c0657038,c06116dd,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,...) at kern_unlink+0x27
May  2 14:07:41 lothlorien kernel: vfs_mountroot_try(c087bf17,c084d4d9,c0863f29,1,c0691d03,...) at vfs_mountroot_try+0x46b
May  2 14:07:41 lothlorien kernel: vfs_mountroot(c09108f0,4,c086b0af,264,439e3000,...) at vfs_mountroot+0x3f1
May  2 14:07:41 lothlorien kernel: start_init(0,e23c8d38,c086ca11,30d,c39f0000,...) at start_init+0x65
May  2 14:07:41 lothlorien kernel: fork_exit(c05e854d,0,e23c8d38) at fork_exit+0xb8
May  2 14:07:41 lothlorien kernel: fork_trampoline() at fork_trampoline+0x8
May  2 14:07:41 lothlorien kernel: --- trap 0, eip = 0, esp = 0xe23c8d70, ebp = 0 ---

-- 
Henrik Brix Andersen <brix_at_FreeBSD.org>

Received on Fri May 02 2008 - 21:39:02 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:30 UTC