summaryrefslogtreecommitdiffstats
path: root/fs/ext3
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@redhat.com>2014-03-17 14:13:00 -0500
committerJan Kara <jack@suse.cz>2014-03-17 20:21:08 +0100
commitf294d3e7be28c43205f41eb0fff97393105d6d2c (patch)
treeab5cd1c43ad8d8769cd5156064e46c1dc4660f6e /fs/ext3
parentb3b749b7ac6ae675f249d3d5ad5851433657f3ad (diff)
downloadlinux-f294d3e7be28c43205f41eb0fff97393105d6d2c.tar.bz2
ext3: explicitly remove inode from orphan list after failed direct io
Otherwise non-empty orphan list will be triggered on umount. This is just an application of commit da1daf by Dmitry Monakhov to the same code in ext3. Signed-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext3')
-rw-r--r--fs/ext3/inode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
index ddf5c21cffbc..77042a2e017c 100644
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -1883,6 +1883,8 @@ retry:
* and pretend the write failed... */
ext3_truncate_failed_direct_write(inode);
ret = PTR_ERR(handle);
+ if (inode->i_nlink)
+ ext3_orphan_del(NULL, inode);
goto out;
}
if (inode->i_nlink)