Date: Wed, 30 Jan 2008 17:36:47 +0100 From: "Daniel Eriksson" <daniel_k_eriksson@telia.com> To: <freebsd-stable@freebsd.org>, <freebsd-current@freebsd.org> Cc: pjd@FreeBSD.org Subject: Reproducible ZFS-related panic Message-ID: <4F9C9299A10AE74E89EA580D14AA10A61A18A6@royal64.emp.zapto.org>
next in thread | raw e-mail | index | archive | help
If you import and export more than one zpool FreeBSD will panic during shutdown. This bug is present in both RELENG_7 and RELENG_7_0 (I have not tested CURRENT). kgdb output: Syncing disks, vnodes remaining...2 1 0 0 done All buffers synced. vput: negative ref count 0xc2ad1aa0: tag ufs, type VDIR usecount 0, writecount 0, refcount 2 mountedhere 0 flags (VV_ROOT) VI_LOCKed v_object 0xc1030174 ref 0 pages 1 lock type ufs: EXCL (count 1) by thread 0xc2960000 (pid 1) ino 2, on dev ad0s1a panic: vput: negative ref cnt KDB: stack backtrace: db_trace_self_wrapper(c086ad8a,d3b19b68,c06265ba,c0868fd5,c08e9ca0,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c0868fd5,c08e9ca0,c086f57a,d3b19b74,d3b19b74,...) at kdb_backtrace+0x29 panic(c086f57a,c0855555,c086f561,c2ad1aa0,d3b19b90,...) at panic+0xaa vput(c2ad1aa0,2,d3b19bf0,c2960000,c086eedd,...) at vput+0xdb dounmount(c2ba6d0c,80000,c2960000,0,0,...) at dounmount+0x49f vfs_unmountall(c0868ebb,0,c2967000,8,d3b19c50,...) at vfs_unmountall+0x33 boot(c2960000,8,1,c295e000,c2960000,...) at boot+0x3e3 reboot(c2960000,d3b19cfc,4,c086b882,56,...) at reboot+0x66 syscall(d3b19d38) at syscall+0x33a Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (55, FreeBSD ELF32, reboot), eip =3D 0x8050903, esp =3D 0xbfbfe90c, ebp =3D 0xbfbfe9d8 --- Uptime: 2m42s Physical memory: 503 MB Dumping 39 MB: 24 8 Run this script and then reboot the computer to trigger the panic: dd if=3D/dev/zero of=3D/usr/_disk1 bs=3D1m count=3D80 dd if=3D/dev/zero of=3D/usr/_disk2 bs=3D1m count=3D80 mdconfig -f /usr/_disk1 -u 1 mdconfig -f /usr/_disk2 -u 2 /etc/rc.d/zfs forcestart zpool create tank1 md1 zpool create tank2 md2 sleep 2 touch /tank1/testfile touch /tank2/testfile sleep 2 zpool export tank2 zpool export tank1 sleep 10 zpool import tank1 zpool import tank2 sleep 2 touch /tank1/testfile touch /tank2/testfile sleep 2 zpool export tank2 zpool export tank1 /etc/rc.d/zfs forcestop sleep 2 mdconfig -d -u 1 mdconfig -d -u 2 rm /usr/_disk1 rm /usr/_disk2 /Daniel Eriksson
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F9C9299A10AE74E89EA580D14AA10A61A18A6>