| From | Sent On | Attachments |
|---|---|---|
| Juergen Unger | Jul 27, 2009 12:24 am | |
| O. Hartmann | Jul 27, 2009 12:58 pm | |
| Juergen Unger | Jul 27, 2009 2:33 pm | |
| Andriy Gapon | Jul 28, 2009 2:50 am | |
| Pawel Jakub Dawidek | Jul 29, 2009 1:47 am | |
| Thomas Backman | Jul 29, 2009 3:31 am | |
| Andriy Gapon | Jul 29, 2009 4:21 am | |
| Andriy Gapon | Jul 29, 2009 4:41 am | |
| Thomas Backman | Jul 29, 2009 5:45 am | |
| Andriy Gapon | Jul 29, 2009 6:03 am | |
| Thomas Backman | Jul 29, 2009 6:23 am | |
| Andriy Gapon | Jul 29, 2009 6:45 am | |
| Thomas Backman | Jul 29, 2009 6:52 am | |
| Andriy Gapon | Jul 29, 2009 6:55 am | |
| Thomas Backman | Jul 29, 2009 7:10 am | |
| Andriy Gapon | Jul 29, 2009 7:35 am | |
| Andriy Gapon | Jul 29, 2009 9:01 am | |
| Thomas Backman | Jul 29, 2009 9:10 am | |
| Thomas Backman | Jul 29, 2009 10:13 am | |
| Andriy Gapon | Jul 29, 2009 10:17 am | |
| Thomas Backman | Jul 29, 2009 11:03 am | |
| Thomas Backman | Jul 29, 2009 1:14 pm | |
| Pawel Jakub Dawidek | Jul 29, 2009 2:17 pm | |
| Thomas Backman | Jul 30, 2009 12:04 am | |
| Andriy Gapon | Jul 30, 2009 5:11 am | |
| Thomas Backman | Jul 30, 2009 5:51 am | |
| Andriy Gapon | Jul 30, 2009 6:13 am | |
| Thomas Backman | Jul 30, 2009 6:31 am | |
| Andriy Gapon | Jul 30, 2009 6:34 am | |
| Andriy Gapon | Jul 30, 2009 7:24 am | |
| Thomas Backman | Jul 30, 2009 7:39 am | |
| Andriy Gapon | Jul 30, 2009 7:45 am | |
| Andriy Gapon | Jul 30, 2009 7:48 am | |
| Thomas Backman | Jul 30, 2009 8:25 am | |
| Andriy Gapon | Jul 30, 2009 8:39 am | |
| Thomas Backman | Jul 30, 2009 9:41 am | |
| Thomas Backman | Jul 30, 2009 11:29 am | |
| Andriy Gapon | Jul 30, 2009 11:41 am | |
| Thomas Backman | Jul 31, 2009 2:04 am | |
| James R. Van Artsdalen | Jul 31, 2009 4:44 am | |
| Thomas Backman | Jul 31, 2009 5:26 am | |
| Thomas Backman | Jul 31, 2009 10:09 am | |
| Tim Kientzle | Aug 1, 2009 10:11 am | |
| Juergen Unger | Aug 2, 2009 2:26 am | |
| Pawel Jakub Dawidek | Aug 2, 2009 2:29 am | |
| Juergen Unger | Aug 3, 2009 1:32 pm | |
| Pawel Jakub Dawidek | Aug 4, 2009 12:33 am | |
| Juergen Unger | Aug 4, 2009 12:53 am | |
| Pawel Jakub Dawidek | Aug 4, 2009 2:49 am | |
| Juergen Unger | Aug 4, 2009 2:56 am | |
| Pawel Jakub Dawidek | Aug 4, 2009 12:50 pm | |
| Thomas Backman | Aug 4, 2009 1:10 pm | |
| Pawel Jakub Dawidek | Aug 4, 2009 1:25 pm | |
| Pawel Jakub Dawidek | Aug 4, 2009 11:49 pm | |
| Thomas Backman | Aug 5, 2009 12:08 am | |
| Thomas Backman | Aug 5, 2009 12:20 am | |
| Pawel Jakub Dawidek | Aug 5, 2009 2:37 am | |
| Thomas Backman | Aug 5, 2009 3:36 am | |
| Thomas Backman | Aug 5, 2009 5:06 am | |
| Pawel Jakub Dawidek | Aug 6, 2009 10:44 pm |
| Subject: | Re: zfs: Fatal trap 12: page fault while in kernel mode | |
|---|---|---|
| From: | Thomas Backman (sere...@exscape.org) | |
| Date: | Jul 31, 2009 2:04:38 am | |
| List: | org.freebsd.freebsd-current | |
On Jul 30, 2009, at 20:29, Thomas Backman wrote:
On Jul 30, 2009, at 18:41, Thomas Backman wrote:
On Jul 30, 2009, at 17:40, Andriy Gapon wrote:
on 30/07/2009 18:25 Thomas Backman said the following:
PS. I'll test Pawel's patch sometime after dinner. ;)
I believe that you should get a perfect result with it.
-- Andriy Gapon
If I dare say it, you were right! I've been testing for about half an hour or so (probably a bit more) now. Still using DEBUG_VFS_LOCKS, and I've tried the test case several times, ran an initial backup (i.e. destroy target pool and send| recv the entire pool) and a few incrementals. Rebooted, tried it again. No panic, no problems! :) Let's hope it stays this way.
So, in short: With that patch (copied here just in case:
http://exscape.org/temp/zfs_vnops.working.patch
) and the libzfs patch linked previously, it appears zfs send/recv
works plain fine. I have yet to try it with clone/promote and
stuff, but since that gave the same panic that this solved, I'm
hoping there will be no problems with that anymore.
Arrrgh! I guess I spoke too soon after all... new panic yet again. :( *sigh* It feels as if this will never become stable right now. (Maybe that's because I've spent all day and most of yesterday too on this ;)
Steps and panic info:
(Prior to this, I tried a simple zfs promote on one of my clones, and then reverted it by promoting the other FS again, with no problems on running the backup script.)
[root@chaos ~]# zfs destroy -r tank/testfs [root@chaos ~]# bash backup.sh backup (all output is from zfs, on zfs send -R -I old tank@new | zfs recv - Fvd slave)
attempting destroy slave/testfs@backup-20090730-2009 success attempting destroy slave/testfs@backup-20090730-1823 success attempting destroy slave/testfs@backup-20090730-1801 success attempting destroy slave/testfs@backup-20090730-2011 success attempting destroy slave/testfs@backup-20090730-1827 success attempting destroy slave/testfs success receiving incremental stream of tank@backup-20090730-2012 into slave@backup-20090730-2012 received 312B stream in 1 seconds (312B/sec) receiving incremental stream of tank/tmp@backup-20090730-2012 into slave/tmp@backup-20090730-2012 received 312B stream in 1 seconds (312B/sec) receiving incremental stream of tank/var@backup-20090730-2012 into slave/var@backup-20090730-2012 received 32.6KB stream in 1 seconds (32.6KB/sec) receiving incremental stream of tank/var/log@backup-20090730-2012 into slave/var/log@backup-20090730-2012 received 298KB stream in 1 seconds (298KB/sec) receiving incremental stream of tank/var/crash@backup-20090730-2012 into slave/var/crash@backup-20090730-2012 received 312B stream in 1 seconds (312B/sec) receiving incremental stream of tank/root@backup-20090730-2012 into slave/root@backup-20090730-2012 [... panic here ...]
Unread portion of the kernel message buffer:panic: solaris assert: ((zp)->z_vnode)->v_usecount > 0, file: /usr/src/sys/modules/ zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c, line: 920 cpuid = 0 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a panic() at panic+0x182 zfsvfs_teardown() at zfsvfs_teardown+0x24d zfs_suspend_fs() at zfs_suspend_fs+0x2b zfs_ioc_recv() at zfs_ioc_recv+0x28b zfsdev_ioctl() at zfsdev_ioctl+0x8a devfs_ioctl_f() at devfs_ioctl_f+0x77 kern_ioctl() at kern_ioctl+0xf6 ioctl() at ioctl+0xfd syscall() at syscall+0x28f Xfast_syscall() at Xfast_syscall+0xe1 --- syscall (54, FreeBSD ELF64, ioctl), rip = 0x800fe5f7c, rsp = 0x7fffffff8ef8, rbp = 0x7fffffff9c30 --- KDB: enter: panic panic: from debugger
#9 0xffffffff8057eda7 in calltrap () at /usr/src/sys/amd64/amd64/exception.S:224 #10 0xffffffff8036c8ad in kdb_enter (why=0xffffffff80609c44 "panic", msg=0xa <Address 0xa out of bounds>) at cpufunc.h:63 #11 0xffffffff8033abcb in panic (fmt=Variable "fmt" is not available. ) at /usr/src/sys/kern/kern_shutdown.c:558#12 0xffffffff80b0ec5d in zfsvfs_teardown () from /boot/kernel/zfs.ko#13 0x0000000000100000 in ?? () #14 0xffffff001bff0250 in ?? () #15 0xffffff001bff0000 in ?? () #16 0xffffff0008004000 in ?? () #17 0xffffff803e9747a0 in ?? () #18 0xffffff803e9747d0 in ?? () #19 0xffffff803e974770 in ?? () #20 0xffffff803e974740 in ?? () #21 0xffffffff80b0ecab in zfs_suspend_fs () from /boot/kernel/zfs.ko Previous frame inner to this frame (corrupt stack?)
Unfortunately, I'm not sure I can reproduce this reliably, since it worked a bunch of times both before and after my previous mail.
Oh, and I'm still using -DDEBUG=1 and DEBUG_VFS_LOCKS... If this isn't a new panic because of the changes, perhaps it was triggered now and never before because of the -DDEBUG?
Regards, Thomas
I'm able to reliably reproduce this panic, by having zfs recv destroy a filesystem on the receiving end.
1) Use DDEBUG=1, I guess 2) Create a FS on the source pool you don't care about: zfs create -o mountpoint=/testfs source/testfs 3) Clone a pool to another: zfs snapshot -r source@snap && zfs send -R source@snap | zfs recv -Fvd target 4) zfs destroy -r source/testfs 4) zfs snapshot -r source@snap2 && zfs send -R -I snap source@snap2 | zfs recv -Fvd target 5) ^ Panic while receiving the FS the destroyed one is mounted under. In my case, this was tank/root three times out of three; I then tried creating testfs under /tmp (tank/tmp/testfs), *mounting* it under /usr/ testfs, and it panics on receiving tank/usr:
attempting destroy slave/tmp/testfs@backup-20090731-1100 success attempting destroy slave/tmp/testfs@backup-20090731-1036 success attempting destroy slave/tmp/testfs success ... receiving incremental stream of tank/tmp@backup-20090731-1101 into slave/tmp@backup-20090731-1101 received 312B stream in 1 seconds (312B/sec) receiving incremental stream of tank/root@backup-20090731-1101 into slave/root@backup-20090731-1101 received 58.3KB stream in 1 seconds (58.3KB/sec) receiving incremental stream of tank/usr@backup-20090731-1101 into slave/usr@backup-20090731-1101 ... panic here, no more output
Same backtrace/assert as above.
Regards, Thomas
_______________________________________________ free...@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "free...@freebsd.org"





