unionfs renaming panic

From: Sergey Zaharchenko <doublef-ctm_at_yandex.ru>
Date: Sat, 25 Jun 2005 15:12:57 +0400
Hello list,

I believe I have found a panic with renaming files on a unionfs.

Here's a script to reproduce it (assuming you have booted in
single-user).

# mount -u /
# mkdir /mnt2
# mount_unionfs /mnt2 /mnt
# cd /mnt
# echo Hello >foo
# mv foo bar

The part of the backtrace before the debugger is:

#23 0xc064557b in kdb_enter (msg=0x0) at cpufunc.h:60
#24 0xc062d997 in panic (fmt=0xc084d6bc "lockmgr: locking against myself")
    at /static/srcfs/usr.src/sys/kern/kern_shutdown.c:537
#25 0xc0622f12 in lockmgr (lkp=0xc1525058, flags=12290, interlkp=0x80,
    td=0xc13fb900) at /static/srcfs/usr.src/sys/kern/kern_lock.c:329
#26 0xc0678f9a in vop_stdlock (ap=0x0)
    at /static/srcfs/usr.src/sys/kern/vfs_default.c:258
#27 0xc07f7fe3 in VOP_LOCK_APV (vop=0xc08bbcc0, a=0xcbfd7ad0)
    at vnode_if.c:1642
#28 0xc068bc90 in vn_lock (vp=0xc1525000, flags=4098, td=0xc13fb900)
    at vnode_if.h:844
#29 0xc067a9c6 in lookup (ndp=0xcbfd7c18)
    at /static/srcfs/usr.src/sys/kern/vfs_lookup.c:380
#30 0xc067a696 in namei (ndp=0xcbfd7c18)
    at /static/srcfs/usr.src/sys/kern/vfs_lookup.c:201
#31 0xc06880a4 in kern_rename (td=0xc13fb900, from=0x0, to=0x0, pathseg=UIO_USERSPACE)
                                              ^^^^^^^^^^^^^^^^
						is this
    at /static/srcfs/usr.src/sys/kern/vfs_syscalls.c:3221
#32 0xc0687fad in rename (td=0xc13fb900, uap=0x0)
                                         ^^^^^^^^
					and this OK?
    at /static/srcfs/usr.src/sys/kern/vfs_syscalls.c:3177
#33 0xc07e834b in syscall (frame=
      {tf_fs = 59, tf_es = 59, tf_ds = 59, tf_edi = -1077940477, tf_esi = -1077940473, tf_ebp = -1077941896, tf_isp = -872579740, tf_ebx = 0, tf_edx = -1, tf_ecx = 2, tf_eax = 128, tf_trapno = 12, tf_err = 2, tf_eip = 671866095, tf_cs = 51, tf_eflags = 646, tf_esp = -1077943572, tf_ss = 59})
    at /static/srcfs/usr.src/sys/i386/i386/trap.c:976
#34 0xc07d573f in Xint0x80_syscall ()
    at /static/srcfs/usr.src/sys/i386/i386/exception.s:200

Relevant Id's:

# ident kernel.debug |grep vfs_syscalls.c
     $FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.391 2005/06/14 01:14:40 jeff Exp $
# ident kernel.debug |grep vfs_lookup.c
     $FreeBSD: src/sys/kern/vfs_lookup.c,v 1.80 2005/04/13 23:36:28 jeff Exp $

Kernel/world built from the 6898'th CTM delta.

Moving from unionfs to a normal fs also results in a panic (the
backtrace seems to be different, but I don't have it at the moment).
Moving from normal fs to unionfs works OK.

Ideas?

-- 
DoubleF
make(1) to rule them all, grep(1) to find them,
patch(1) to fix them all and cvs ci them.

Received on Sat Jun 25 2005 - 09:14:09 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:37 UTC