f2fs: should unset atomic flag after successful commit
authorJaegeuk Kim <jaegeuk@kernel.org>
Sun, 10 Jan 2016 01:08:38 +0000 (17:08 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Mon, 11 Jan 2016 23:56:44 +0000 (15:56 -0800)
If there is an error during commit, we should keep the flag in order to
abort it.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/file.c

index 3d43857e989232add7e37c3703b48579e4d853ec..18ddb1e5182a16e016224d449c6eb281c582b00e 100644 (file)
@@ -1378,8 +1378,10 @@ static int f2fs_ioc_commit_atomic_write(struct file *filp)
        if (f2fs_is_atomic_file(inode)) {
                clear_inode_flag(F2FS_I(inode), FI_ATOMIC_FILE);
                ret = commit_inmem_pages(inode, false);
-               if (ret)
+               if (ret) {
+                       set_inode_flag(F2FS_I(inode), FI_ATOMIC_FILE);
                        goto err_out;
+               }
        }
 
        ret = f2fs_sync_file(filp, 0, LLONG_MAX, 0);