btrfs: handle transaction commit errors in flush_reservations()
authorDavid Sterba <dsterba@suse.com>
Thu, 22 Feb 2024 08:35:54 +0000 (09:35 +0100)
committerDavid Sterba <dsterba@suse.com>
Mon, 4 Mar 2024 15:24:54 +0000 (16:24 +0100)
Other errors in flush_reservations() are handled and also in the caller.
Ignoring commit might make some sense as it's called right after join so
it's to poke the whole commit machinery to free space.

However for consistency return the error. The caller
btrfs_quota_disable() would try to start the transaction which would
in turn fail too so there's no effective change.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/qgroup.c

index 0443312..3846433 100644 (file)
@@ -1324,7 +1324,7 @@ static int flush_reservations(struct btrfs_fs_info *fs_info)
        trans = btrfs_join_transaction(fs_info->tree_root);
        if (IS_ERR(trans))
                return PTR_ERR(trans);
-       btrfs_commit_transaction(trans);
+       ret = btrfs_commit_transaction(trans);
 
        return ret;
 }