From: Christoph Hellwig Date: Fri, 24 Oct 2025 08:04:15 +0000 (+0200) Subject: btrfs: use the local tmp_inode variable in start_delalloc_inodes X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=41e52c644753f1faac8892df32709cc659be01fb;p=thirdparty%2Flinux.git btrfs: use the local tmp_inode variable in start_delalloc_inodes start_delalloc_inodes has a struct inode * pointer available in the main loop, use it instead of re-calculating it from the btrfs inode. Signed-off-by: Christoph Hellwig Link: https://patch.msgid.link/20251024080431.324236-5-hch@lst.de Reviewed-by: Damien Le Moal Reviewed-by: Johannes Thumshirn Signed-off-by: Christian Brauner --- diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 3b1b3a0553ee..9edb78fc57fc 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -8744,9 +8744,9 @@ static int start_delalloc_inodes(struct btrfs_root *root, if (snapshot) set_bit(BTRFS_INODE_SNAPSHOT_FLUSH, &inode->runtime_flags); if (full_flush) { - work = btrfs_alloc_delalloc_work(&inode->vfs_inode); + work = btrfs_alloc_delalloc_work(tmp_inode); if (!work) { - iput(&inode->vfs_inode); + iput(tmp_inode); ret = -ENOMEM; goto out; } @@ -8754,7 +8754,7 @@ static int start_delalloc_inodes(struct btrfs_root *root, btrfs_queue_work(root->fs_info->flush_workers, &work->work); } else { - ret = filemap_fdatawrite_wbc(inode->vfs_inode.i_mapping, wbc); + ret = filemap_fdatawrite_wbc(tmp_inode->i_mapping, wbc); btrfs_add_delayed_iput(inode); if (ret || wbc->nr_to_write <= 0) goto out;