]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up queue-5.10/btrfs-fix-race-leading-to-unpersisted-data-and-metadata-on-fsync...
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 May 2021 08:38:27 +0000 (10:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 May 2021 08:38:27 +0000 (10:38 +0200)
queue-5.10/btrfs-fix-race-leading-to-unpersisted-data-and-metadata-on-fsync.patch

index 37f243720cba5a364f8309669bec19647ad33d66..72aaa87e93b9726023a9a8781201fff5b4250317 100644 (file)
@@ -201,9 +201,9 @@ Signed-off-by: Filipe Manana <fdmanana@suse.com>
 Signed-off-by: David Sterba <dsterba@suse.com>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- fs/btrfs/file.c     |   35 +++++++++++++++++++++++++----------
+ fs/btrfs/file.c     |   36 +++++++++++++++++++++++++-----------
  fs/btrfs/tree-log.c |    3 ++-
- 2 files changed, 27 insertions(+), 11 deletions(-)
+ 2 files changed, 27 insertions(+), 12 deletions(-)
 
 --- a/fs/btrfs/file.c
 +++ b/fs/btrfs/file.c
@@ -238,7 +238,15 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  /*
   * fsync call for both files and directories.  This logs the inode into
   * the tree log instead of forcing full commits whenever possible.
-@@ -2187,17 +2211,8 @@ int btrfs_sync_file(struct file *file, l
+@@ -2080,7 +2104,6 @@ int btrfs_sync_file(struct file *file, l
+ {
+       struct dentry *dentry = file_dentry(file);
+       struct inode *inode = d_inode(dentry);
+-      struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
+       struct btrfs_root *root = BTRFS_I(inode)->root;
+       struct btrfs_trans_handle *trans;
+       struct btrfs_log_ctx ctx;
+@@ -2187,17 +2210,8 @@ int btrfs_sync_file(struct file *file, l
  
        atomic_inc(&root->log_batch);