Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 May 2010 18:49:33 +0400
From:      pluknet <pluknet@gmail.com>
To:        Stefan Bethke <stb@lassitu.de>
Cc:        FreeBSD Stable <freebsd-stable@freebsd.org>
Subject:   Re: panic on zfs unmount
Message-ID:  <AANLkTim2nw2cuzDeAkzBmHKoe-9tQG13ZvjBjCySQFIi@mail.gmail.com>
In-Reply-To: <36AED70D-52B8-47AD-8E6A-C21402D42151@lassitu.de>
References:  <36AED70D-52B8-47AD-8E6A-C21402D42151@lassitu.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On 11 December 2009 23:28, Stefan Bethke <stb@lassitu.de> wrote:
> I still sometimes get the "lost" .zfs/snapshot directory, with resulting panic, and it just happened again.  I have the full crash dump, if anyone wants to look at details.
>
> # cd /jail/foo/.zfs
> # ls
> ls: snapshot: Bad file descriptor
> # cd
> # zfs umount tank/jail/foo
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address   = 0xa8
> fault code              = supervisor write data, page not present
> instruction pointer     = 0x20:0xffffffff8033fac5
> stack pointer           = 0x28:0xffffff80626cf9d0
> frame pointer           = 0x28:0xffffff80626cf9e0
> code segment            = base 0x0, limit 0xfffff, type 0x1b
>                        = DPL 0, pres 1, long 1, def32 0, gran 1
> processor eflags        = interrupt enabled, resume, IOPL = 0
> current process         = 38362 (zfs)
> trap number             = 12
> panic: page fault
> cpuid = 0
> Uptime: 7d3h33m46s
> Physical memory: 3313 MB
>
> #0  doadump () at pcpu.h:223
> 223     pcpu.h: No such file or directory.
>        in pcpu.h
> (kgdb) #0  doadump () at pcpu.h:223
> #1  0xffffffff80337bd9 in boot (howto=260)
>    at /usr/src/sys/kern/kern_shutdown.c:416
> #2  0xffffffff8033802c in panic (fmt=Variable "fmt" is not available.
> )
>    at /usr/src/sys/kern/kern_shutdown.c:579
> #3  0xffffffff805cc2ad in trap_fatal (frame=0xc, eva=Variable "eva" is not available.
> )
>    at /usr/src/sys/amd64/amd64/trap.c:857
> #4  0xffffffff805cc694 in trap_pfault (frame=0xffffff80626cf920, usermode=0)
>    at /usr/src/sys/amd64/amd64/trap.c:773
> #5  0xffffffff805cd06a in trap (frame=0xffffff80626cf920)
>    at /usr/src/sys/amd64/amd64/trap.c:499
> #6  0xffffffff805b2943 in calltrap ()
>    at /usr/src/sys/amd64/amd64/exception.S:224
> #7  0xffffffff8033fac5 in _sx_xlock (sx=0x90, opts=0,
>    file=0xffffffff80ac1d30 "/usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c", line=1349) at atomic.h:158
> #8  0xffffffff80a53b85 in zfsctl_umount_snapshots (vfsp=Variable "vfsp" is not available.
> )
>    at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c:1349
> #9  0xffffffff80a604f9 in zfs_umount (vfsp=0xffffff00017518d0, fflag=0)
>    at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:1020
> #10 0xffffffff803c080a in dounmount (mp=0xffffff00017518d0, flags=0, td=Variable "td" is not available.
> )
>    at /usr/src/sys/kern/vfs_mount.c:1294
> #11 0xffffffff803c1038 in unmount (td=0xffffff002ed50720,
>    uap=0xffffff80626cfbf0) at /usr/src/sys/kern/vfs_mount.c:1179
> #12 0xffffffff805cc906 in syscall (frame=0xffffff80626cfc80)
>    at /usr/src/sys/amd64/amd64/trap.c:989
> #13 0xffffffff805b2c21 in Xfast_syscall ()
>    at /usr/src/sys/amd64/amd64/exception.S:373
> #14 0x0000000800f4ba4c in ?? ()
> Previous frame inner to this frame (corrupt stack?)
> (kgdb)
>
> --
> Stefan Bethke <stb@lassitu.de>   Fon +49 151 14070811
>

Same trace, when trying to destroy pool with mounted snapshots.
Seen on 7.3-amd64

Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0xc0
fault code              = supervisor write data, page not present
instruction pointer     = 0x8:0xffffffff80543525
stack pointer           = 0x10:0xffffff8107cd79c0
frame pointer           = 0x10:0xffffff8107cd79d0
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 50534 (zpool)
db> bt
Tracing pid 50534 tid 100409 td 0xffffff005e3ab740
_sx_xlock() at _sx_xlock+0x15
zfsctl_umount_snapshots() at zfsctl_umount_snapshots+0xa5
zfs_umount() at zfs_umount+0xd0
dounmount() at dounmount+0x2c9
unmount() at unmount+0x30a
syscall() at syscall+0x256
Xfast_syscall() at Xfast_syscall+0xab
--- syscall (22, FreeBSD ELF64, unmount), rip = 0x801032cdc, rsp =
0x7fffffffaac8, rbp = 0x801302000 ---

-- 
wbr,
pluknet



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTim2nw2cuzDeAkzBmHKoe-9tQG13ZvjBjCySQFIi>