Re: crash in xfs in current

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/6/16 8:43 PM, Reinoud Koornstra wrote:
> Dear Dave and Everyone,
> 
> Today I crashed twice in a row in 4.7-rc1.
> This was the message and trace:
> 
> Jun  6 18:07:34 router-dev kernel: [  134.297442] XFS: Assertion failed: args->op_flags & XFS_DA_OP_OKNOENT, file: fs/xfs/libxfs/xfs_dir2_leaf.c, line: 1307

Ok, that ASSERT has been there since 2005 ...

> Jun  6 18:07:34 router-dev kernel: [  134.297459] ------------[ cut here ]------------
> Jun  6 18:07:34 router-dev kernel: [  134.297474] kernel BUG at fs/xfs/xfs_message.c:113!
> Jun  6 18:07:34 router-dev kernel: [  134.297485] invalid opcode: 0000 [#1] SMP
> Jun  6 18:07:34 router-dev kernel: [  134.297494] Modules linked in:

... unlinewrapping...

> Jun  6 18:07:34 router-dev kernel: [  134.297962] Stack:
> Jun  6 18:07:34 router-dev kernel: [  134.297967]  ffff8803f7ebbc40 ffffffffc0322277 ffff8803f7ebbc58 00000000ffffffff
> Jun  6 18:07:34 router-dev kernel: [  134.297986]  ffff8803ffffffff ffff880414673840 ffff8803f610b000 0000000000000000
> Jun  6 18:07:34 router-dev kernel: [  134.298004]  ffff880452bed380 0000000000000000 ffff003c00a7d2f1 00000000b56d2e47
> Jun  6 18:07:34 router-dev kernel: [  134.298022] Call Trace:
> Jun  6 18:07:34 router-dev kernel: [  134.298039] [<ffffffffc0322277>] xfs_dir2_leaf_lookup_int+0x237/0x350 [xfs]
> Jun  6 18:07:34 router-dev kernel: [  134.298064] [<ffffffffc03229e1>] xfs_dir2_leaf_replace+0x41/0x190 [xfs]
> Jun  6 18:07:34 router-dev kernel: [  134.298088] [<ffffffffc031c06c>] xfs_dir_replace+0x18c/0x1b0 [xfs]
> Jun  6 18:07:34 router-dev kernel: [  134.298114] [<ffffffffc035653f>] xfs_rename+0x45f/0x9d0 [xfs]
> Jun  6 18:07:34 router-dev kernel: [  134.298155] [<ffffffffc034f892>] xfs_vn_rename+0xb2/0xe0 [xfs]
> Jun  6 18:07:34 router-dev kernel: [  134.298169] [<ffffffff8122e824>] vfs_rename+0x5a4/0x940
> Jun  6 18:07:34 router-dev kernel: [  134.298195] [<ffffffff81233475>] SyS_rename+0x3d5/0x3f0
> Jun  6 18:07:34 router-dev kernel: [  134.298207] [<ffffffff819cd236>] entry_SYSCALL_64_fastpath+0x1e/0xa8
> Jun  6 18:07:34 router-dev kernel: [  134.298221] Code: 00 66 2e 0f 1f


> I seem to be able to hit this bug rather frequently.
> So I put in some instrumentation to print out the flags next time I
> hit it and save a core file to another fs.
> Is this is known bug to you or?

xfs_dir2_leaf_lookup_int() only hits that ASSERT if it was given
a name to rename, and failed to find the original.  i.e. that should
not happen.

        /*
         * Loop over all the entries with the right hash value
         * looking to match the name.
         */

<do that loop>
<fail to find the hash value for the name>
<then:>

        ASSERT(args->op_flags & XFS_DA_OP_OKNOENT);
        /*
         * Here, we can only be doing a lookup (not a rename or remove).
         * If a case-insensitive match was found earlier, re-read the
         * appropriate data block if required and return it.
         */

A rename should never fail to find the original name.

Did this problem only show up after an update?

Do you have a reproducer?

Have you unmounted and run an "xfs_repair -n" and captured the output
to see if there is any on-disk corruption?

You might gather an xfs_metadump as well, before you do any live
repair that might change the filesystem.

-Eric

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs



[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux