Patch "btrfs: do not warn for free space inode in cow_file_range" has been added to the 5.17-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    btrfs: do not warn for free space inode in cow_file_range

to the 5.17-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     btrfs-do-not-warn-for-free-space-inode-in-cow_file_r.patch
and it can be found in the queue-5.17 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit cd3acbbcd9f9f38a811b9337e1a853177fc036db
Author: Josef Bacik <josef@xxxxxxxxxxxxxx>
Date:   Wed Mar 23 11:30:36 2022 -0400

    btrfs: do not warn for free space inode in cow_file_range
    
    [ Upstream commit a7d16d9a07bbcb7dcd5214a1bea75c808830bc0d ]
    
    This is a long time leftover from when I originally added the free space
    inode, the point was to catch cases where we weren't honoring the NOCOW
    flag.  However there exists a race with relocation, if we allocate our
    free space inode in a block group that is about to be relocated, we
    could trigger the COW path before the relocation has the opportunity to
    find the extents and delete the free space cache.  In production where
    we have auto-relocation enabled we're seeing this WARN_ON_ONCE() around
    5k times in a 2 week period, so not super common but enough that it's at
    the top of our metrics.
    
    We're properly handling the error here, and with us phasing out v1 space
    cache anyway just drop the WARN_ON_ONCE.
    
    Signed-off-by: Josef Bacik <josef@xxxxxxxxxxxxxx>
    Reviewed-by: David Sterba <dsterba@xxxxxxxx>
    Signed-off-by: David Sterba <dsterba@xxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 85daae70afda..9547088a9306 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -1130,7 +1130,6 @@ static noinline int cow_file_range(struct btrfs_inode *inode,
 	int ret = 0;
 
 	if (btrfs_is_free_space_inode(inode)) {
-		WARN_ON_ONCE(1);
 		ret = -EINVAL;
 		goto out_unlock;
 	}



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux