Bug #2102

UFS panic during ffs_sync

Added by Anonymous about 10 years ago. Updated over 9 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


I'm consistently getting a panic (master from 7/18) with light testing of a ufs
fs on an ssd:
fsstress -n 100 -p 100

ip = VTOI; #returns null because vp->v_data is 0x0

(kgdb) bt
#0 _get_mycpu (di=<value optimized out>) at ./machine/thread.h:69
#1 md_dumpsys (di=<value optimized out>) at
#2 0xffffffff804818f5 in dumpsys () at /mnt/src/main/sys/kern/kern_shutdown.c:927
#3 0xffffffff80481f5b in boot (howto=260) at
#4 0xffffffff80482204 in panic (fmt=0xffffffff8077188b "%s") at
#5 0xffffffff80725bce in trap_fatal (frame=0xffffffe05f0ec888, eva=<value
optimized out>)
at /mnt/src/main/sys/platform/pc64/x86_64/trap.c:978
#6 0xffffffff80725d61 in trap_pfault (frame=0xffffffe05f0ec888, usermode=<value
optimized out>)
at /mnt/src/main/sys/platform/pc64/x86_64/trap.c:876
#7 0xffffffff80726232 in trap (frame=0xffffffe05f0ec888) at
#8 0xffffffff8071ed0e in calltrap () at
#9 0xffffffff8063742d in ffs_sync_scan1 (mp=0xffffffe05bd3daf8,
vp=0xffffffe05f4557a8, data=0xffffffe05f0ec9f8)
at /mnt/src/main/sys/vfs/ufs/ffs_vfsops.c:1029
#10 0xffffffff804f0a05 in vmntvnodescan (mp=0xffffffe05bd3daf8, flags=<value
optimized out>,
fastfunc=<value optimized out>, slowfunc=<value optimized out>, data=<value
optimized out>)
at /mnt/src/main/sys/kern/vfs_mount.c:1043
#11 0xffffffff80637dbe in ffs_sync (mp=0xffffffe05bd3daf8, waitfor=<value
optimized out>)
at /mnt/src/main/sys/vfs/ufs/ffs_vfsops.c:988
#12 0xffffffff804fc2fe in vfs_sync (mp=0xffffffe05bd3daf8, waitfor=6) at
#13 0xffffffff804f7480 in sync_callback (mp=0xffffffe05bd3daf8, data=<value
optimized out>)
at /mnt/src/main/sys/kern/vfs_syscalls.c:893
#14 0xffffffff804f10b2 in mountlist_scan (callback=<value optimized out>,
data=0x0, how=<value optimized out>)
at /mnt/src/main/sys/kern/vfs_mount.c:889
#15 0xffffffff804f6fb4 in sys_sync (uap=<value optimized out>) at
#16 0xffffffff80726982 in syscall2 (frame=0xffffffe05f0ecc08) at
#17 0xffffffff8071ef4f in Xfast_syscall () at
#18 0x000000000000002b in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(kgdb) frame 9
#9 0xffffffff8063742d in ffs_sync_scan1 (mp=0xffffffe05bd3daf8,
vp=0xffffffe05f4557a8, data=0xffffffe05f0ec9f8)
at /mnt/src/main/sys/vfs/ufs/ffs_vfsops.c:1029
1029 if (vp->v_type == VNON || ((ip->i_flag &
(kgdb) p ip
$1 = <value optimized out>
(kgdb) p vp->v_data
$2 = (void *) 0x0
(kgdb) p vp
$3 = (struct vnode *) 0xffffffe05f4557a8


core.txt.10 (103 KB) core.txt.10 Anonymous, 07/20/2011 10:39 PM
0001-add-NULL-check-for-inode-pointer.patch (850 Bytes) 0001-add-NULL-check-for-inode-pointer.patch Anonymous, 10/19/2011 09:50 PM



Updated by Anonymous almost 10 years ago

Fixed by checking if inode pointer is NULL in ffs_sync_scan1(). This fix is
similar the inode pointer check that exists in hammer_sync_scan1().


Updated by Anonymous over 9 years ago

  • Status changed from New to Closed

This has been fixed by some of the recent fixes that Matt committed.

Also available in: Atom PDF