XFS regression: Oops in xfs_buf_do_callbacks on xfstest 137
Raghavendra D Prabhu
raghu.prabhu13 at gmail.com
Sun Sep 2 19:45:21 CDT 2012
Hi,
* On Fri, Aug 17, 2012 at 01:15:43PM -0500, Eric Sandeen <sandeen at sandeen.net> wrote:
>On 8/17/12 1:02 PM, Christoph Hellwig wrote:
>>I'd be this is my new code added to xfs_buf_item_unpin, but I don't
>>quite understand why. It's been a long time since I wrote that code,
>>but I had to add that code to make sure we clear all buffers during
>>a forced shutdown. Can you test if things go away if you just remove it
>>(even if causes other hangs?)
>
>It does go away AFAIK, since the bisect found it.
>
>Sadly it's been on the back burner for me, under other deadline pressure.
>
>-Eric
>
>_______________________________________________
>xfs mailing list
>xfs at oss.sgi.com
>http://oss.sgi.com/mailman/listinfo/xfs
I hit the same bug on xfstest 137 while testing and it is indeed
POISON_FREE.
Here are the intermediate backtraces: http://sprunge.us/HZeD
I am also attaching the full backtrace.
git head:
commit b686d1f79acb65c6a34473c15fcfa2ee54aed8e2
Author: Jeff Liu <jeff.liu at oracle.com>
Date: Tue Aug 21 17:12:18 2012 +0800
Regards,
--
Raghavendra Prabhu
GPG Id : 0xD72BE977
Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977
www: wnohang.net
-------------- next part --------------
#0 xfs_buf_iodone_callbacks (bp=0xffff88007a9d2d00) at fs/xfs/xfs_buf_item.c:1057
lip = <optimized out>
mp = <optimized out>
lasttime = 0
lasttarg = 0x0 <irq_stack_union>
__func__ = "xfs_buf_iodone_callbacks"
#1 0xffffffff815824ee in xfs_buf_iodone_work (work=work at entry=0xffff88007a9d2e28) at fs/xfs/xfs_buf.c:1006
bp = 0xffff88007a9d2d00
__func__ = "xfs_buf_iodone_work"
#2 0xffffffff81582dec in xfs_buf_ioend (bp=bp at entry=0xffff88007a9d2d00, schedule=schedule at entry=0) at fs/xfs/xfs_buf.c:1027
__func__ = "xfs_buf_ioend"
#3 0xffffffff8166e161 in xfs_buf_item_unpin (lip=0xffff88007a9c0d20, remove=1) at fs/xfs/xfs_buf_item.c:533
bp = 0xffff88007a9d2d00
ailp = 0xffff88007aad5240
stale = 0
__func__ = "xfs_buf_item_unpin"
#4 0xffffffff8165d104 in xfs_trans_committed_bulk (ailp=0xffff88007aad5240, log_vector=<optimized out>, commit_lsn=0, aborted=aborted at entry=2) at fs/xfs/xfs_trans.c:1305
lip = 0xffff88007a9c0d20
item_lsn = 0
log_items = {0xffff88007f9d37c0, 0xffff880079fbbe80, 0xffff8800724d5ac8, 0xffffffff81dba277 <__schedule+3791>, 0xffff8800724d5b28, 0xffff88007ad99560, 0xffff88007ad99560, 0xffff88007aebef60, 0x2 <irq_stack_union+2>, 0xffff8800790df578, 0xffff8800724d5b98,
0xffffffff8189d08e <trace_hardirqs_on_thunk+58>, 0xffff88007f800000, 0x3 <irq_stack_union+3>, 0x1 <irq_stack_union+1>, 0xffff88007aaf2b28, 0xffff8800724d5fd8, 0xffff8800724d4000, 0x2 <irq_stack_union+2>, 0xffff8800724d5ad8, 0xffffffff810cd59a <irq_exit+410>,
0xffffffff81dbeb74 <restore_args>, 0xffff8800724d59d0, 0xffffffff81e03e40 <save_stack_ops>, 0xffff880079151cb8, 0x2 <irq_stack_union+2>, 0xffff8800724adfb0, 0x2 <irq_stack_union+2>, 0x0 <irq_stack_union>, 0xffff88007affd520, 0xffff88007aad5240,
0xffffffffffffff10}
lv = 0xffff88007affd520
cur = <incomplete type>
i = <optimized out>
__func__ = "xfs_trans_committed_bulk"
#5 0xffffffff81669107 in xlog_cil_committed (args=args at entry=0xffff88007ad99560, abort=abort at entry=2) at fs/xfs/xfs_log_cil.c:337
ctx = 0xffff88007ad99560
mp = 0xffff88007aebef60
__func__ = "xlog_cil_committed"
#6 0xffffffff8166a301 in xlog_cil_push (log=log at entry=0xffff8800724adfb0) at fs/xfs/xfs_log_cil.c:582
cil = 0xffff8800790df480
lv = <optimized out>
ctx = 0xffff88007ad99560
new_ctx = <optimized out>
commit_iclog = 0xffffffff81170cb4 <__lock_release+100>
tic = 0xffff880079151c00
num_iovecs = <optimized out>
error = <optimized out>
thdr = {
th_magic = 1414676814,
th_type = 42,
th_tid = -576842867,
th_num_items = 3777
}
lhdr = {
i_addr = 0xffff8800724d5be8,
i_len = 16,
i_type = 19
}
lvhdr = {
lv_next = 0xffff88007affd520,
lv_niovecs = 1,
lv_iovecp = 0xffff8800724d5bd8,
lv_item = 0x0 <irq_stack_union>,
lv_buf = 0x0 <irq_stack_union>,
lv_buf_len = 0
}
commit_lsn = <optimized out>
push_seq = 1
__func__ = "xlog_cil_push"
#7 0xffffffff8166a4a9 in xlog_cil_push_foreground (log=log at entry=0xffff8800724adfb0, push_seq=push_seq at entry=1) at fs/xfs/xfs_log_cil.c:659
cil = 0xffff8800790df480
__func__ = "xlog_cil_push_foreground"
#8 0xffffffff8166a8f1 in xlog_cil_force_lsn (log=log at entry=0xffff8800724adfb0, sequence=1) at fs/xfs/xfs_log_cil.c:771
cil = 0xffff8800790df480
ctx = <optimized out>
commit_lsn = -1
__func__ = "xlog_cil_force_lsn"
#9 0xffffffff81665d5c in xlog_cil_force (log=0xffff8800724adfb0) at fs/xfs/xfs_log_priv.h:668
No locals.
#10 _xfs_log_force (mp=mp at entry=0xffff88007aebef60, flags=flags at entry=1, log_flushed=log_flushed at entry=0x0 <irq_stack_union>) at fs/xfs/xfs_log.c:2889
log = 0xffff8800724adfb0
iclog = <optimized out>
lsn = <optimized out>
__func__ = "_xfs_log_force"
#11 0xffffffff81666479 in xfs_log_force (mp=mp at entry=0xffff88007aebef60, flags=flags at entry=1) at fs/xfs/xfs_log.c:3004
error = <optimized out>
__func__ = "xfs_log_force"
#12 0xffffffff815ad9ec in xfs_quiesce_data (mp=mp at entry=0xffff88007aebef60) at fs/xfs/xfs_sync.c:310
error = <optimized out>
error2 = 0
__func__ = "xfs_quiesce_data"
#13 0xffffffff815a78a0 in xfs_fs_sync_fs (sb=<optimized out>, wait=<optimized out>) at fs/xfs/xfs_super.c:946
mp = 0xffff88007aebef60
error = <optimized out>
__func__ = "xfs_fs_sync_fs"
#14 0xffffffff813b0389 in __sync_filesystem (sb=sb at entry=0xffff88007a1ad668, wait=wait at entry=1) at fs/sync.c:38
__func__ = "__sync_filesystem"
#15 0xffffffff813b0477 in sync_filesystem (sb=sb at entry=0xffff88007a1ad668) at fs/sync.c:66
ret = <optimized out>
__func__ = "sync_filesystem"
#16 0xffffffff8134da7f in generic_shutdown_super (sb=0xffff88007a1ad668) at fs/super.c:439
sop = 0xffffffff81e86360 <xfs_super_operations>
__func__ = "generic_shutdown_super"
#17 0xffffffff8134dc62 in kill_block_super (sb=<optimized out>) at fs/super.c:1104
bdev = 0xffff88007d0115c0
mode = 131
__func__ = "kill_block_super"
#18 0xffffffff8134ed14 in deactivate_locked_super (s=s at entry=0xffff88007a1ad668) at fs/super.c:306
fs = 0xffffffff828057c0 <xfs_fs_type>
__func__ = "deactivate_locked_super"
#19 0xffffffff813501c7 in deactivate_super (s=s at entry=0xffff88007a1ad668) at fs/super.c:337
__func__ = "deactivate_super"
#20 0xffffffff813902f4 in mntfree (mnt=0xffff88007ababd40) at fs/namespace.c:855
m = 0xffff88007ababd60
sb = 0xffff88007a1ad668
#21 mntput_no_expire (mnt=mnt at entry=0xffff88007ababd40) at fs/namespace.c:893
__func__ = "mntput_no_expire"
#22 0xffffffff81392ce5 in sys_umount (name=<optimized out>, flags=0) at fs/namespace.c:1276
path = <incomplete type>
mnt = 0xffff88007ababd40
retval = 0
lookup_flags = <optimized out>
__func__ = "sys_umount"
#23 <signal handler called>
No locals.
#24 0x00007f66053c34f7 in ?? ()
No symbol table info available.
#25 0x000000050003123b in ?? ()
No symbol table info available.
#26 0x0000000000100000 in cpu_lock_stats ()
No symbol table info available.
Continuing.
Program received signal SIGINT, Interrupt.
0xffffffff810607bb in native_safe_halt () at /media/Vone/kernel/xfs-next/arch/x86/include/asm/irqflags.h:49
49 asm volatile("sti; hlt": : :"memory");
A debugging session is active.
Inferior 1 [Remote target] will be killed.
Quit anyway? (y or n)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://oss.sgi.com/pipermail/xfs/attachments/20120903/12a74dc5/attachment.sig>
More information about the xfs
mailing list