On Fri, Aug 19, 2022 at 04:39:48PM +0800, Qu Wenruo wrote: > This is the backport for v5.15.x stable branch. > > The full explananation can be found here: > https://lore.kernel.org/linux-btrfs/Yv85PTBsDhrQITZp@xxxxxxxxx/T/#t > > Difference between v5.15.x and v5.18.x backports: > > - btrfs_io_contrl::fs_info and btrfs_raid_bio::fs_info refactor > In v5.15 and older kernel, btrfs_raid_bio and btrfs_io_control both > have fs_info member, and the new rbio_add_bio() function utilizes > btrfs_io_ctrl::fs_info. > > Unfortunately that rbio->bioc->fs_info is not always initialized in > v5.15 and older kernels. > Thus has to use rbio->fs_info instead. > > If not properly handled, can lead to btrfs/158 crash. > > Qu Wenruo (2): > btrfs: only write the sectors in the vertical stripe which has data > stripes > btrfs: raid56: don't trust any cached sector in > __raid56_parity_recover() > > fs/btrfs/raid56.c | 74 ++++++++++++++++++++++++++++++++++++----------- > 1 file changed, 57 insertions(+), 17 deletions(-) > > -- > 2.37.1 > All now queued up, thanks. greg k-h