Seeing lock order reversal
Kip Macy
kip.macy at gmail.com
Tue Mar 18 09:27:34 PDT 2008
See archives / UPDATING for an explanation.
On 3/18/08, Robert Huff <roberthuff at rcn.com> wrote:
>
> Alex Goncharov writes:
>
> > I am trying to source-upgrade one of my 7.0 systems to 8.0-CURRENT.
>
> I updated on Friday.
>
>
> > The very first 8.0 build (this morning) gave me the kernel that didn't
> > boot. Built it again, finishing about 15 minutes ago. This one
> > booted all right but I see this in `/var/log/messages':
> >
> >
> ================================================================================
> > WARNING: WITNESS option enabled, expect reduced performance.
> > lock order reversal:
> > 1st 0xc4093e28 devfs (devfs) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/kern/vfs_subr.c:2064
> > 2nd 0xc4172b54 devfsmount (devfsmount) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/fs/devfs/devfs_vnops.c:201
> > KDB: stack backtrace:
> > db_trace_self_wrapper(c0af5d71,e2888bbc,c07a70de,c0af8353,c4172b54,...)
> at db_trace_self_wrapper+0x26
> > kdb_backtrace(c0af8353,c4172b54,c0ae90df,c0ae90df,c0ae9120,...) at
> kdb_backtrace+0x29
> > witness_checkorder(c4172b54,9,c0ae9120,c9,c7,...) at
> witness_checkorder+0x6de
> > _sx_xlock(c4172b54,0,c0ae9120,c9,c4172b54,...) at _sx_xlock+0x7d
> > devfs_allocv(c415db80,c4174000,e2888c28,c3e1ecc0,c0afe288,...) at
> devfs_allocv+0x144
> > devfs_root(c4174000,2,c0c67378,c3e1ecc0,ca,...) at devfs_root+0x51
> > set_rootvnode(c0c67360,0,c0afe288,5f4,c07e4aa0,...) at set_rootvnode+0x2b
> > vfs_mountroot(c0c15270,4,c0aed8e7,264,0,...) at vfs_mountroot+0x356
> > start_init(0,e2888d38,c0aef370,30c,c3e1ccd0,...) at start_init+0x65
> > fork_exit(c0737740,0,e2888d38) at fork_exit+0xb8
> > fork_trampoline() at fork_trampoline+0x8
> > --- trap 0, eip = 0, esp = 0xe2888d70, ebp = 0 ---
> > Trying to mount root from ufs:/dev/ad4s1a
> > lock order reversal:
> > 1st 0xc40939e8 ufs (ufs) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/kern/vfs_subr.c:2064
> > 2nd 0xc4174000 vfslock (vfslock) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/kern/vfs_subr.c:364
> > KDB: stack backtrace:
> > db_trace_self_wrapper(c0af5d71,e28889d8,c07a70de,c0af8353,c4174000,...)
> at db_trace_self_wrapper+0x26
> > kdb_backtrace(c0af8353,c4174000,c0afe39a,c0afe39a,c0afe937,...) at
> kdb_backtrace+0x29
> > witness_checkorder(c4174000,1,c0afe937,16c,e2888a18,...) at
> witness_checkorder+0x6de
> > _lockmgr_args(c4174000,20001,c4174030,0,ffffffff,...) at
> _lockmgr_args+0x1d5
> > vfs_busy(c4174000,0,0,c3e1ecc0,e2888b58,...) at vfs_busy+0x1b0
> > lookup(e2888b44,c0afe022,c6,bf,c3dee22c,...) at lookup+0x7bf
> > namei(e2888b44,c4174030,1c1,c0afe288,e2888b54,...) at namei+0x34b
> > kern_unlink(c3e1ecc0,c0afe6d9,1,62f,0,...) at kern_unlink+0x40
> > vfs_mountroot_try(c0afe893,c0aec557,c0ae4ade,1,c07e4aa0,...) at
> vfs_mountroot_try+0x470
> > vfs_mountroot(c0c15270,4,c0aed8e7,264,0,...) at vfs_mountroot+0x418
> > start_init(0,e2888d38,c0aef370,30c,c3e1ccd0,...) at start_init+0x65
> > fork_exit(c0737740,0,e2888d38) at fork_exit+0xb8
> > fork_trampoline() at fork_trampoline+0x8
> > --- trap 0, eip = 0, esp = 0xe2888d70, ebp = 0 ---
> > lock order reversal:
> > 1st 0xc3e22044 user map (user map) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/vm/vm_map.c:3111
> > 2nd 0xc40937c8 ufs (ufs) @
> /mnt/wdx/freebsd/8.0/usr/src/sys/kern/vfs_subr.c:2064
> > KDB: stack backtrace:
> > db_trace_self_wrapper(c0af5d71,e28889c4,c07a70de,c0af8353,c40937c8,...)
> at db_trace_self_wrapper+0x26
> > kdb_backtrace(c0af8353,c40937c8,c0aece96,c0aece96,c0afe937,...) at
> kdb_backtrace+0x29
> > witness_checkorder(c40937c8,1,c0afe937,810,e28889e8,...) at
> witness_checkorder+0x6de
> > _lockmgr_args(c40937c8,30041,c40937f8,0,ffffffff,...) at
> _lockmgr_args+0x1d5
> > ffs_lock(e2888a78,c075fc3d,c0c20554,30041,c4093770,...) at ffs_lock+0xa3
> > VOP_LOCK1_APV(c0bcbec0,e2888a78,c0aec555,3,c40937f8,...) at
> VOP_LOCK1_APV+0xa5
> > _vn_lock(c4093770,30041,c0afe937,810,0,...) at _vn_lock+0xf7
> > vget(c4093770,30041,c3e1ecc0,4a9,c1460600,...) at vget+0x10b
> > vnode_pager_lock(c1460480,0,c0b157d5,127,e2888be8,...) at
> vnode_pager_lock+0x1ad
> > vm_fault(c3e22000,80cf000,2,8,80cf340,...) at vm_fault+0x1df
> > trap_pfault(5,0,c0b23bd2,2c4,c3e1ccd0,...) at trap_pfault+0x118
> > trap(e2888d38) at trap+0x259
> > calltrap() at calltrap+0x6
> > --- trap 0xc, eip = 0x80480e5, esp = 0xbfbfeef0, ebp = 0xbfbfef10 ---
>
> I'm gettig both of these as well. It doesn't stop the system
> from booting, or _seem_ to affect operation ... but it would be nice
> if they would go away.
>
>
>
> Robert Huff
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
More information about the freebsd-current
mailing list