Re: e4defrag and chattr +e warnings

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

 



Aneesh Kumar K.V wrote:
On Mon, Aug 24, 2009 at 03:39:24PM -0700, Brian Rogers wrote:
Hi all.

The first time since boot that I run e4defrag on a directory of significant size, I get this warning in dmesg:


This might be happening when it hits files that don't use extents, but I haven't tried e4defrag on a single non-extents file to verify that theory. I've just so far only seen this happen when I defrag a directory where I get the "operation not supported" message.

If I use chattr +e to migrate a file to use extents, I get this:

[  470.400044] ------------[ cut here ]------------
[  470.400065] WARNING: at fs/inode.c:1210 generic_delete_inode+0x65/0x16a()


Can you try this patch

commit 832ecbfe5f3cf16916552759fbeff085992a66c4
Author: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
Date:   Tue Aug 25 15:14:11 2009 +0530

    ext4: unlock the new inode before iput
We need to unlock the new inode before iput. This patch fix the below warning. [ 470.400044] ------------[ cut here ]------------
    [  470.400065] WARNING: at fs/inode.c:1210 generic_delete_inode+0x65/0x16a()
    [  470.400072] Hardware name: N/A
    .....
    ...
    [  470.400353] Pid: 4451, comm: chattr Not tainted 2.6.31-rc7-red-debug #4
    [  470.400359] Call Trace:
    [  470.400372]  [<ffffffff81037771>] warn_slowpath_common+0x77/0x8f
    [  470.400385]  [<ffffffff81037798>] warn_slowpath_null+0xf/0x11
    [  470.400395]  [<ffffffff810b7f28>] generic_delete_inode+0x65/0x16a
    [  470.400405]  [<ffffffff810b8044>] generic_drop_inode+0x17/0x1bd
    [  470.400413]  [<ffffffff810b7083>] iput+0x61/0x65
    [  470.400455]  [<ffffffffa003b229>] ext4_ext_migrate+0x5eb/0x66a [ext4]
    [  470.400492]  [<ffffffffa002b1f8>] ext4_ioctl+0x340/0x756 [ext4]
    [  470.400507]  [<ffffffff810b1a91>] vfs_ioctl+0x1d/0x82
    [  470.400517]  [<ffffffff810b1ff0>] do_vfs_ioctl+0x483/0x4c9
    [  470.400527]  [<ffffffff81059c30>] ? trace_hardirqs_on+0xd/0xf
    [  470.400537]  [<ffffffff810b2087>] sys_ioctl+0x51/0x74
    [  470.400549]  [<ffffffff8100ba6b>] system_call_fastpath+0x16/0x1b
    [  470.400557] ---[ end trace ab85723542352dac ]---
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>

diff --git a/fs/ext4/migrate.c b/fs/ext4/migrate.c
index 313a50b..05361ad 100644
--- a/fs/ext4/migrate.c
+++ b/fs/ext4/migrate.c
@@ -618,7 +618,7 @@ err_out:
 	tmp_inode->i_nlink = 0;
ext4_journal_stop(handle);
-
+	unlock_new_inode(tmp_inode);
 	iput(tmp_inode);
return retval;
That fixed the chattr-triggered warning. Thanks!

Brian

--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux