ソースを参照

ovl: fsync after copy-up

Make sure the copied up file hits the disk before renaming to the final
destination.  If this is not done then the copy-up may corrupt the data in
the file in case of a crash.

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Cc: <stable@vger.kernel.org>
Miklos Szeredi 9 年 前
コミット
641089c154
1 ファイル変更2 行追加0 行削除
  1. 2 0
      fs/overlayfs/copy_up.c

+ 2 - 0
fs/overlayfs/copy_up.c

@@ -178,6 +178,8 @@ static int ovl_copy_up_data(struct path *old, struct path *new, loff_t len)
 		len -= bytes;
 	}
 
+	if (!error)
+		error = vfs_fsync(new_file, 0);
 	fput(new_file);
 out_fput:
 	fput(old_file);