Deadlock with umount -f involving tmpfs on top of ZFS on r271170

Bryan Drewery bdrewery at FreeBSD.org
Tue Sep 23 02:08:02 UTC 2014


This is slightly different than my last report (involving
zfs_lookup/zfs_dirent). I still need to gather information from that
previous one.

Here is what I have on this one. Quoted so Thunderbird doesn't trash it:

> 1. Poudriere build startup, run for N=01,...,12 in parallel:
>      a. mount tmpfs on /poudriere/data/.m/exp-10amd64-commit-test/N
>         /poudriere/data/.m is a ZFS mount.
>      b. cpdup /poudriere/data/.m/exp-10amd64-commit-test/ref to /poudriere/data/.m/exp-10amd64-commit-test/N
> [1]  c. mkdir -p /poudriere/data/.m/exp-10amd64-commit-test/N/.p
> 2. SIGINT during this phase:
> [2]  a. umount -f all tmpfs
>      b. cpdup processes are *not* killed. They continue running. Most of them fail due to their dst tmpfs being gone.
> [3]  c. A cpdup process managed to continue running. Since the tmpfs was gone it started trying to write to the ZFS mount under it. (/poudriere/data/.m)
> 
> # procstat -kka|egrep "(lockmgr|tmpfs)"
> [3] 76137 100919 cpdup            -                mi_switch+0x179 sleepq_switch+0x152 sleepq_wait+0x43 sleeplk+0x14a __lockmgr_args+0x862 vop_stdlock+0x3c VOP_LOCK1_APV+0xfc _vn_lock+0xaa vget+0x67 cache_lookup+0x5b2 vfs_cache_lookup+0xac VOP_LOOKUP_APV+0xf1 lookup+0x5ad namei+0x4e4 kern_linkat+0x13d sys_link+0x28 filemon_wrapper_link+0x19 amd64_syscall+0x25a
> [1] 76346 102346 mkdir            -                mi_switch+0x179 sleepq_switch+0x152 sleepq_wait+0x43 sleeplk+0x14a __lockmgr_args+0xea1 vop_stdlock+0x3c VOP_LOCK1_APV+0xfc _vn_lock+0xaa lookup+0x496 namei+0x4e4 kern_mkdirat+0xcb amd64_syscall+0x25a Xfast_syscall+0xfb
> [2] 76286 102085 umount           -                mi_switch+0x179 sleepq_switch+0x152 sleepq_wait+0x43 _sleep+0x366 vfs_write_suspend+0xf0 vfs_write_suspend_umnt+0x38 tmpfs_unmount+0x6d dounmount+0x424 sys_unmount+0x2ec amd64_syscall+0x25a Xfast_syscall+0xfb
> 
> [3] root    76137    0.7  0.0  14772   2844  3  D+    3:12PM     0:05.28 cpdup -i0 -x /poudriere/data/.m/exp-10amd64-commit-test/ref /poudriere/data/.m/exp-10amd64-commit-test/02
> [1] root    76346    0.0  0.0   8200   1916  3  D+    3:12PM     0:00.00 mkdir -p /poudriere/data/.m/exp-10amd64-commit-test/ref/../03/.p
> [2] root    76286    [command taken from gdb]                            umount -f /poudriere/data/.m/exp-10amd64-commit-test/02
> 
> Locked vnodes:
> 
> 0xfffff80fda0bcce8: tag zfs, type VDIR
>     usecount 2, writecount 0, refcount 3 mountedhere 0x0
>     flags ()
>     v_object 0xfffff805fc81a300 ref 0 pages 0
>     lock type zfs: SHARED (count 2) with exclusive waiters pending
>     mount /poudriere/data/.m from zroot/poudriere/data/.m
>     path /poudriere/data/.m/exp-10am64-commit-test/02
> 0xfffff8065de471d8: tag zfs, type VDIR
>     usecount 1, writecount 0, refcount 3 mountedhere 0xfffff8058f582330
>     flags ()
>     lock type zfs: EXCL by thread 0xfffff8047c0eb920 (pid 76286) with exclusive and shared waiters pending
>     mount /poudriere/data/.m from zroot/poudriere/data/.m
>     path /poudriere/data/.m
> 
> 
> Processes:
> 
> PID 76286 (umount -f /poudriere/data/.m/exp-10amd64-commit-test/02):
>   Waiting in vfs_write_suspend(mp=0xfffff8058f582330) for mn_writeopcount==0
> 
> 
> (kgdb) thread 521
> [Switching to thread 521 (Thread 102085)]#0  sched_switch (td=0xfffff8047c0eb920, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> 1932                    cpuid = PCPU_GET(cpuid);
> (kgdb) backtrace
> #0  sched_switch (td=0xfffff8047c0eb920, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> #1  0xffffffff80929379 in mi_switch (flags=260, newtd=0x0) at /usr/src/sys/kern/kern_synch.c:493
> #2  0xffffffff80966af2 in sleepq_switch (wchan=<value optimized out>, pri=<value optimized out>) at /usr/src/sys/kern/subr_sleepqueue.c:552
> #3  0xffffffff80966953 in sleepq_wait (wchan=0xfffff8058f5823bc, pri=119) at /usr/src/sys/kern/subr_sleepqueue.c:631
> #4  0xffffffff80928c86 in _sleep (ident=<value optimized out>, lock=<value optimized out>, priority=<value optimized out>, wmesg=<value optimized out>, sbt=<value optimized out>,
>     pr=<value optimized out>) at /usr/src/sys/kern/kern_synch.c:255
> #5  0xffffffff809df0b0 in vfs_write_suspend (mp=0xfffff8058f582330, flags=<value optimized out>) at /usr/src/sys/kern/vfs_vnops.c:1793
> #6  0xffffffff809df308 in vfs_write_suspend_umnt (mp=0xfffff8058f582330) at /usr/src/sys/kern/vfs_vnops.c:1848
> #7  0xffffffff822ad9ed in tmpfs_unmount (mp=0xfffff8058f582330, mntflags=<value optimized out>) at /usr/src/sys/modules/tmpfs/../../fs/tmpfs/tmpfs_vfsops.c:280
> #8  0xffffffff809c7664 in dounmount (mp=0xfffff8058f582330, flags=134742016, td=0xfffff8047c0eb920) at /usr/src/sys/kern/vfs_mount.c:1310
> #9  0xffffffff809c721c in sys_unmount (td=0xfffff8047c0eb920, uap=0xfffffe1248712b80) at /usr/src/sys/kern/vfs_mount.c:1201
> #10 0xffffffff80d38b6a in amd64_syscall (td=0xfffff8047c0eb920, traced=0) at subr_syscall.c:133
> #11 0xffffffff80d1a44b in Xfast_syscall () at /usr/src/sys/amd64/amd64/exception.S:390
> 
> (kgdb) p ((struct mount*)0xfffff8058f582330)->mnt_writeopcount
> $12 = 1
> (kgdb) p ((struct mount*)0xfffff8058f582330)->mnt_activevnodelistsize
> $13 = 1
> (kgdb) p ((struct mount*)0xfffff8058f582330)->mnt_vnodecovered
> $25 = (struct vnode *) 0xfffff8065de471d8
> (kgdb) p *(struct mount*)0xfffff8058f582330
> $5 = {mnt_mtx = {lock_object = {lo_name = 0xffffffff80fc4c20 "struct mount mtx", lo_flags = 16973824, lo_data = 0, lo_witness = 0xfffffe0000b1ea00}, mtx_lock = 4}, mnt_gen = 23,
>   mnt_list = {tqe_next = 0x0, tqe_prev = 0xfffff8117c2abce8}, mnt_op = 0xffffffff822b3e40, mnt_vfc = 0xffffffff822b3f60, mnt_vnodecovered = 0xfffff8065de471d8, mnt_syncer = 0x0,
>   mnt_ref = 7357, mnt_nvnodelist = {tqh_first = 0xfffff803f6a691d8, tqh_last = 0xfffff8065dc871f8}, mnt_nvnodelistsize = 7356, mnt_activevnodelist = {tqh_first = 0xfffff806dff493b0,
>     tqh_last = 0xfffff806dff49470}, mnt_activevnodelistsize = 1, mnt_writeopcount = 1, mnt_kern_flag = 150994953, mnt_flag = 4096, mnt_opt = 0xfffff804e377eaf0, mnt_optnew = 0x0,
>   mnt_maxsymlinklen = 0, mnt_stat = {f_version = 537068824, f_type = 135, f_flags = 4096, f_bsize = 4096, f_iosize = 4096, f_blocks = 1835008, f_bfree = 1798116, f_bavail = 1798116,
>     f_files = 25690112, f_ffree = 25682842, f_syncwrites = 0, f_asyncwrites = 0, f_syncreads = 0, f_asyncreads = 0, f_spare = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, f_namemax = 255, f_owner = 0,
>     f_fsid = {val = {-2027880658, 135}}, f_charspare = '\0' <repeats 79 times>, f_fstypename = "tmpfs\000\000\000\000\000\000\000\000\000\000",
>     f_mntfromname = "tmpfs", '\0' <repeats 82 times>, f_mntonname = "/poudriere/data/.m/exp-10amd64-commit-test/02", '\0' <repeats 42 times>}, mnt_cred = 0xfffff8047c8a4a00,
>   mnt_data = 0xfffff8000bd2b800, mnt_time = 0, mnt_iosize_max = 65536, mnt_export = 0x0, mnt_label = 0x0, mnt_hashseed = 3766194835, mnt_lockref = 0, mnt_secondary_writes = 0,
>   mnt_secondary_accwrites = 0, mnt_susp_owner = 0xfffff8047c0eb920, mnt_gjprovider = 0x0, mnt_explock = {lock_object = {lo_name = 0xffffffff80fa4b29 "explock", lo_flags = 108199936,
>       lo_data = 0, lo_witness = 0xfffffe0000b26c80}, lk_lock = 1, lk_exslpfail = 0, lk_timo = 0, lk_pri = 96}, mnt_upper_link = {tqe_next = 0x0, tqe_prev = 0xfffff8005c842ca0},
>   mnt_uppers = {tqh_first = 0x0, tqh_last = 0xfffff8058f582650}}
> (kgdb) p (((struct mount*)0xfffff8058f582330)->mnt_activevnodelist->tqh_first)
> $30 = (struct vnode *) 0xfffff806dff493b0
> (kgdb) p *(((struct mount*)0xfffff8058f582330)->mnt_activevnodelist->tqh_first)
> $24 = {v_tag = 0xffffffff822b2f76 "tmpfs", v_op = 0xffffffff822b3918, v_data = 0xfffff80ae07caae0, v_mount = 0xfffff8058f582330, v_nmntvnodes = {tqe_next = 0xfffff806071d11d8,
>     tqe_prev = 0xfffff804d63963d0}, v_un = {vu_mount = 0x0, vu_socket = 0x0, vu_cdev = 0x0, vu_fifoinfo = 0x0}, v_hashlist = {le_next = 0x0, le_prev = 0x0}, v_cache_src = {
>     lh_first = 0x0}, v_cache_dst = {tqh_first = 0x0, tqh_last = 0xfffff806dff49400}, v_cache_dd = 0x0, v_lock = {lock_object = {lo_name = 0xffffffff822b2f76 "tmpfs", lo_flags = 116588544,
>       lo_data = 0, lo_witness = 0xfffffe0000b29a00}, lk_lock = 1, lk_exslpfail = 0, lk_timo = 51, lk_pri = 96}, v_interlock = {lock_object = {
>       lo_name = 0xffffffff80fc4bc6 "vnode interlock", lo_flags = 16973824, lo_data = 0, lo_witness = 0xfffffe0000b1e500}, mtx_lock = 4}, v_vnlock = 0xfffff806dff49418, v_actfreelist = {
>     tqe_next = 0x0, tqe_prev = 0xfffff8058f5823a8}, v_bufobj = {bo_lock = {lock_object = {lo_name = 0xffffffff80fcd144 "bufobj interlock", lo_flags = 86179840, lo_data = 0,
>         lo_witness = 0xfffffe0000b26580}, rw_lock = 1}, bo_ops = 0xffffffff814ab900, bo_object = 0xfffff809dc520a00, bo_synclist = {le_next = 0x0, le_prev = 0x0},
>     bo_private = 0xfffff806dff493b0, __bo_vnode = 0xfffff806dff493b0, bo_clean = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff806dff494d0}, bv_root = {pt_root = 0}, bv_cnt = 0},
>     bo_dirty = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff806dff494f0}, bv_root = {pt_root = 0}, bv_cnt = 0}, bo_numoutput = 0, bo_flag = 0, bo_bsize = 4096}, v_pollinfo = 0x0,
>   v_label = 0x0, v_lockf = 0x0, v_rl = {rl_waiters = {tqh_first = 0x0, tqh_last = 0xfffff806dff49538}, rl_currdep = 0x0}, v_cstart = 0, v_lasta = 0, v_lastw = 0, v_clen = 0,
>   v_holdcnt = 1, v_usecount = 1, v_iflag = 512, v_vflag = 0, v_writecount = 0, v_hash = 115340435, v_type = VREG}
> 
> 
> PID 76137 (cpdup -i0 -x /poudriere/data/.m/exp-10amd64-commit-test/ref /poudriere/data/.m/exp-10amd64-commit-test/02):
>   Waiting for vget(vp=0xfffff8065de471d8) [which is mnt_vnodecovered from umount -f]
> 
> (kgdb) thread 520
> [Switching to thread 520 (Thread 100919)]#0  sched_switch (td=0xfffff8005cd2a490, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> 1932                    cpuid = PCPU_GET(cpuid);
> (kgdb) backtrace
> #0  sched_switch (td=0xfffff8005cd2a490, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> #1  0xffffffff80929379 in mi_switch (flags=260, newtd=0x0) at /usr/src/sys/kern/kern_synch.c:493
> #2  0xffffffff80966af2 in sleepq_switch (wchan=<value optimized out>, pri=<value optimized out>) at /usr/src/sys/kern/subr_sleepqueue.c:552
> #3  0xffffffff80966953 in sleepq_wait (wchan=0xfffff8065de47240, pri=96) at /usr/src/sys/kern/subr_sleepqueue.c:631
> #4  0xffffffff808fdf3a in sleeplk (lk=<value optimized out>, flags=<value optimized out>, ilk=<value optimized out>, wmesg=<value optimized out>, pri=<value optimized out>,
>     timo=<value optimized out>) at /usr/src/sys/kern/kern_lock.c:225
> #5  0xffffffff808fcfc2 in __lockmgr_args (lk=0xfffff8065de47240, flags=<value optimized out>, ilk=0xfffff8065de47270, wmesg=<value optimized out>, pri=<value optimized out>,
>     timo=<value optimized out>, file=0xffffffff80fcd0e8 "/usr/src/sys/kern/vfs_subr.c", line=2137) at /usr/src/sys/kern/kern_lock.c:680
> #6  0xffffffff809be27c in vop_stdlock (ap=<value optimized out>) at lockmgr.h:98
> #7  0xffffffff80e5b75c in VOP_LOCK1_APV (vop=<value optimized out>, a=<value optimized out>) at vnode_if.c:2082
> #8  0xffffffff809ddbca in _vn_lock (vp=0xfffff8065de471d8, flags=<value optimized out>, file=0xffffffff80fcd0e8 "/usr/src/sys/kern/vfs_subr.c", line=2137) at vnode_if.h:859
> #9  0xffffffff809cde87 in vget (vp=0xfffff8065de471d8, flags=2097408, td=0xfffff8005cd2a490) at /usr/src/sys/kern/vfs_subr.c:2137
> #10 0xffffffff809ba132 in cache_lookup (dvp=0xfffff80fda0bcce8, vpp=0xfffffe1247de78b8, cnp=0xfffffe1247de78e0, tsp=0x0, ticksp=0x0) at /usr/src/sys/kern/vfs_cache.c:673
> #11 0xffffffff809bb2dc in vfs_cache_lookup (ap=<value optimized out>) at /usr/src/sys/kern/vfs_cache.c:1038
> #12 0xffffffff80e58e41 in VOP_LOOKUP_APV (vop=<value optimized out>, a=<value optimized out>) at vnode_if.c:127
> #13 0xffffffff809c364d in lookup (ndp=0xfffffe1247de7858) at vnode_if.h:54
> #14 0xffffffff809c2d84 in namei (ndp=0xfffffe1247de7858) at /usr/src/sys/kern/vfs_lookup.c:300
> #15 0xffffffff809d76dd in kern_linkat (td=0xfffff8005cd2a490, fd1=<value optimized out>, fd2=-100, path1=<value optimized out>, path2=0x80141c600 <Address 0x80141c600 out of bounds>,
>     segflg=UIO_USERSPACE, follow=64) at /usr/src/sys/kern/vfs_syscalls.c:1572
> #16 0xffffffff809d7518 in sys_link (td=0x0, uap=<value optimized out>) at /usr/src/sys/kern/vfs_syscalls.c:1541
> #17 0xffffffff820c64e9 in filemon_wrapper_link (td=0x0, uap=0xfffffe1247de7b80) at filemon_wrapper.c:364
> #18 0xffffffff80d38b6a in amd64_syscall (td=0xfffff8005cd2a490, traced=0) at subr_syscall.c:133
> #19 0xffffffff80d1a44b in Xfast_syscall () at /usr/src/sys/amd64/amd64/exception.S:390
> 
> (kgdb) p *(struct vnode*)0xfffff8065de471d8
> $34 = {v_tag = 0xffffffff81f0f8ff "zfs", v_op = 0xffffffff81f24b50, v_data = 0xfffff80cb12f22e0, v_mount = 0xfffff8005c8a8660, v_nmntvnodes = {tqe_next = 0xfffff80528f4d938,
>     tqe_prev = 0xfffff804d659cb30}, v_un = {vu_mount = 0xfffff8058f582330, vu_socket = 0xfffff8058f582330, vu_cdev = 0xfffff8058f582330, vu_fifoinfo = 0xfffff8058f582330}, v_hashlist = {
>     le_next = 0x0, le_prev = 0x0}, v_cache_src = {lh_first = 0x0}, v_cache_dst = {tqh_first = 0xfffff805d7724a80, tqh_last = 0xfffff805d7724aa0}, v_cache_dd = 0xfffff805d7724a80,
>   v_lock = {lock_object = {lo_name = 0xffffffff81f0f8ff "zfs", lo_flags = 117112832, lo_data = 0, lo_witness = 0xfffffe0000b28780}, lk_lock = 18446735296877738278, lk_exslpfail = 0,
>     lk_timo = 51, lk_pri = 96}, v_interlock = {lock_object = {lo_name = 0xffffffff80fc4bc6 "vnode interlock", lo_flags = 16973824, lo_data = 0, lo_witness = 0xfffffe0000b1e500},
>     mtx_lock = 4}, v_vnlock = 0xfffff8065de47240, v_actfreelist = {tqe_next = 0xfffff80528f4d938, tqe_prev = 0xfffff804d659cbd0}, v_bufobj = {bo_lock = {lock_object = {
>         lo_name = 0xffffffff80fcd144 "bufobj interlock", lo_flags = 86179840, lo_data = 0, lo_witness = 0xfffffe0000b26580}, rw_lock = 1}, bo_ops = 0xffffffff814ab900, bo_object = 0x0,
>     bo_synclist = {le_next = 0x0, le_prev = 0x0}, bo_private = 0xfffff8065de471d8, __bo_vnode = 0xfffff8065de471d8, bo_clean = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff8065de472f8},
>       bv_root = {pt_root = 0}, bv_cnt = 0}, bo_dirty = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff8065de47318}, bv_root = {pt_root = 0}, bv_cnt = 0}, bo_numoutput = 0, bo_flag = 0,
>     bo_bsize = 131072}, v_pollinfo = 0x0, v_label = 0x0, v_lockf = 0x0, v_rl = {rl_waiters = {tqh_first = 0x0, tqh_last = 0xfffff8065de47360}, rl_currdep = 0x0}, v_cstart = 0,
>   v_lasta = 0, v_lastw = 0, v_clen = 0, v_holdcnt = 3, v_usecount = 1, v_iflag = 512, v_vflag = 0, v_writecount = 0, v_hash = 106816625, v_type = VDIR}
> 
> (kgdb) frame 15
> #15 0xffffffff809d76dd in kern_linkat (td=0xfffff8005cd2a490, fd1=<value optimized out>, fd2=-100, path1=<value optimized out>, path2=0x80141c600 <Address 0x80141c600 out of bounds>,
>     segflg=UIO_USERSPACE, follow=64) at /usr/src/sys/kern/vfs_syscalls.c:1572
> 1572            if ((error = namei(&nd)) == 0) {
> (kgdb) info locals
> mp = (struct mount *) 0xfffff8058f582330
> nd = {ni_dirp = 0x80141c600 <Address 0x80141c600 out of bounds>, ni_segflg = UIO_USERSPACE, ni_rightsneeded = {cr_rights = {144115188080051200, 288230376151711744}}, ni_startdir = 0x0,
>   ni_rootdir = 0xfffff8005c0ea1d8, ni_topdir = 0x0, ni_dirfd = -100, ni_strictrelative = 0, ni_filecaps = {fc_rights = {cr_rights = {0, 0}}, fc_ioctls = 0x0, fc_nioctls = -1,
>     fc_fcntls = 0}, ni_vp = 0xfffff8065de471d8, ni_dvp = 0xfffff80fda0bcce8, ni_pathlen = 63,
>   ni_next = 0xfffff80e918bb02d "/usr/share/openssl/man/man3/CMS_SignerInfo_get0_signer_id.3.gz", ni_loopcnt = 0, ni_cnd = {cn_nameiop = 1, cn_flags = 134236168,
>     cn_thread = 0xfffff8005cd2a490, cn_cred = 0xfffff8005c22a700, cn_lkflags = 2097152,
>     cn_pnbuf = 0xfffff80e918bb000 "/poudriere/data/.m/exp-10amd64-commit-test/02/usr/share/openssl/man/man3/CMS_SignerInfo_get0_signer_id.3.gz",
>     cn_nameptr = 0xfffff80e918bb02b "02/usr/share/openssl/man/man3/CMS_SignerInfo_get0_signer_id.3.gz", cn_namelen = 2, cn_consume = 0}}
> rights = {cr_rights = {144115188080051200, 288230376151711744}}
> mp = (struct mount *) 0xfffff8058f582330
> vp = (struct vnode *) 0xfffff806dff493b0
> error = <value optimized out>
>   kern_linkat
>     mp = (struct mount *) 0xfffff8058f582330
>     vp = (struct vnode *) 0xfffff806dff493b0
> 
> 
> PID 76346 (mkdir -p /poudriere/data/.m/exp-10amd64-commit-test/ref/../03/.p)
>   Waiting on vn_lock(0xfffff80fda0bcce8)
> 
> (kgdb) thread 522
> [Switching to thread 522 (Thread 102346)]#0  sched_switch (td=0xfffff80419f86920, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> 1932                    cpuid = PCPU_GET(cpuid);
> (kgdb) backtrace
> #0  sched_switch (td=0xfffff80419f86920, newtd=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/sched_ule.c:1932
> #1  0xffffffff80929379 in mi_switch (flags=260, newtd=0x0) at /usr/src/sys/kern/kern_synch.c:493
> #2  0xffffffff80966af2 in sleepq_switch (wchan=<value optimized out>, pri=<value optimized out>) at /usr/src/sys/kern/subr_sleepqueue.c:552
> #3  0xffffffff80966953 in sleepq_wait (wchan=0xfffff80fda0bcd50, pri=96) at /usr/src/sys/kern/subr_sleepqueue.c:631
> #4  0xffffffff808fdf3a in sleeplk (lk=<value optimized out>, flags=<value optimized out>, ilk=<value optimized out>, wmesg=<value optimized out>, pri=<value optimized out>,
>     timo=<value optimized out>) at /usr/src/sys/kern/kern_lock.c:225
> #5  0xffffffff808fd601 in __lockmgr_args (lk=0xfffff80fda0bcd50, flags=<value optimized out>, ilk=0xfffff80fda0bcd80, wmesg=<value optimized out>, pri=<value optimized out>,
>     timo=<value optimized out>, file=0xffffffff80fcc4f0 "/usr/src/sys/kern/vfs_lookup.c", line=691) at /usr/src/sys/kern/kern_lock.c:939
> #6  0xffffffff809be27c in vop_stdlock (ap=<value optimized out>) at lockmgr.h:98
> #7  0xffffffff80e5b75c in VOP_LOCK1_APV (vop=<value optimized out>, a=<value optimized out>) at vnode_if.c:2082
> #8  0xffffffff809ddbca in _vn_lock (vp=0xfffff80fda0bcce8, flags=<value optimized out>, file=0xffffffff80fcc4f0 "/usr/src/sys/kern/vfs_lookup.c", line=691) at vnode_if.h:859
> #9  0xffffffff809c3536 in lookup (ndp=0xfffffe1248b7b910) at /usr/src/sys/kern/vfs_lookup.c:691
> #10 0xffffffff809c2d84 in namei (ndp=0xfffffe1248b7b910) at /usr/src/sys/kern/vfs_lookup.c:300
> #11 0xffffffff809daf2b in kern_mkdirat (td=0xfffff80419f86920, fd=-100, path=0x7fffffffeca1 <Address 0x7fffffffeca1 out of bounds>, segflg=UIO_USERSPACE, mode=511)
>     at /usr/src/sys/kern/vfs_syscalls.c:3687
> #12 0xffffffff80d38b6a in amd64_syscall (td=0xfffff80419f86920, traced=0) at subr_syscall.c:133
> #13 0xffffffff80d1a44b in Xfast_syscall () at /usr/src/sys/amd64/amd64/exception.S:390
> #14 0x0000000800953faa in ?? ()
> 
> (kgdb) p *(struct vnode*) 0xfffff80fda0bcce8
> $35 = {v_tag = 0xffffffff81f0f8ff "zfs", v_op = 0xffffffff81f24b50, v_data = 0xfffff80c56bf8b80, v_mount = 0xfffff8005c8a8660, v_nmntvnodes = {tqe_next = 0xfffff806d8e1d1d8,
>     tqe_prev = 0xfffff80df75d51f8}, v_un = {vu_mount = 0x0, vu_socket = 0x0, vu_cdev = 0x0, vu_fifoinfo = 0x0}, v_hashlist = {le_next = 0x0, le_prev = 0x0}, v_cache_src = {
>     lh_first = 0xfffff805d7724a80}, v_cache_dst = {tqh_first = 0xfffff805df597690, tqh_last = 0xfffff805df5976b0}, v_cache_dd = 0xfffff805df597690, v_lock = {lock_object = {
>       lo_name = 0xffffffff81f0f8ff "zfs", lo_flags = 117112832, lo_data = 0, lo_witness = 0xfffffe0000b28780}, lk_lock = 21, lk_exslpfail = 0, lk_timo = 51, lk_pri = 96}, v_interlock = {
>     lock_object = {lo_name = 0xffffffff80fc4bc6 "vnode interlock", lo_flags = 16973824, lo_data = 0, lo_witness = 0xfffffe0000b1e500}, mtx_lock = 4}, v_vnlock = 0xfffff80fda0bcd50,
>   v_actfreelist = {tqe_next = 0xfffff806d8e1d1d8, tqe_prev = 0xfffff80528f4d9f8}, v_bufobj = {bo_lock = {lock_object = {lo_name = 0xffffffff80fcd144 "bufobj interlock",
>         lo_flags = 86179840, lo_data = 0, lo_witness = 0xfffffe0000b26580}, rw_lock = 1}, bo_ops = 0xffffffff814ab900, bo_object = 0xfffff805fc81a300, bo_synclist = {le_next = 0x0,
>       le_prev = 0x0}, bo_private = 0xfffff80fda0bcce8, __bo_vnode = 0xfffff80fda0bcce8, bo_clean = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff80fda0bce08}, bv_root = {pt_root = 0},
>       bv_cnt = 0}, bo_dirty = {bv_hd = {tqh_first = 0x0, tqh_last = 0xfffff80fda0bce28}, bv_root = {pt_root = 0}, bv_cnt = 0}, bo_numoutput = 0, bo_flag = 0, bo_bsize = 131072},
>   v_pollinfo = 0x0, v_label = 0x0, v_lockf = 0x0, v_rl = {rl_waiters = {tqh_first = 0x0, tqh_last = 0xfffff80fda0bce70}, rl_currdep = 0x0}, v_cstart = 0, v_lasta = 0, v_lastw = 0,
>   v_clen = 0, v_holdcnt = 3, v_usecount = 2, v_iflag = 512, v_vflag = 0, v_writecount = 0, v_hash = 18, v_type = VDIR}
> 

Let me know if I can provide any further information.

-- 
Regards,
Bryan Drewery

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20140922/b839f560/attachment.sig>


More information about the freebsd-fs mailing list