Re: [PATCH 6.1.y] btrfs: calculate the right space for delayed refs when updating global reserve

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

 



On Tue, Sep 24, 2024 at 05:38:52PM -0300, Diogo Jahchan Koike wrote:
> From: Filipe Manana <fdmanana@xxxxxxxx>
> 
> commit f8f210dc84709804c9f952297f2bfafa6ea6b4bd upstream.
> 
> When updating the global block reserve, we account for the 6 items needed
> by an unlink operation and the 6 delayed references for each one of those
> items. However the calculation for the delayed references is not correct
> in case we have the free space tree enabled, as in that case we need to
> touch the free space tree as well and therefore need twice the number of
> bytes. So use the btrfs_calc_delayed_ref_bytes() helper to calculate the
> number of bytes need for the delayed references at
> btrfs_update_global_block_rsv().
> 
> Reviewed-by: Josef Bacik <josef@xxxxxxxxxxxxxx>
> Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
> Reviewed-by: David Sterba <dsterba@xxxxxxxx>
> Signed-off-by: David Sterba <dsterba@xxxxxxxx>
> [Diogo: this patch has been cherry-picked from the original commit;
> conflicts included lack of a define (picked from commit 5630e2bcfe223)
> and lack of btrfs_calc_delayed_ref_bytes (picked from commit 0e55a54502b97)
> - changed const struct -> struct for compatibility.]
> Signed-off-by: Diogo Jahchan Koike <djahchankoike@xxxxxxxxx>
> 
> ---
> Fixes WARNING in btrfs_chunk_alloc (2) [0]
> [0]: https://syzkaller.appspot.com/bug?extid=57de2b05959bc1e659af

Now queued up, thanks.

greg k-h




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux