Re: [PATCH AUTOSEL 6.12 09/19] btrfs: zlib: make the compression path to handle sector size < page size

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

 



On Sun, Nov 24, 2024 at 07:38:44AM -0500, Sasha Levin wrote:
> From: Qu Wenruo <wqu@xxxxxxxx>
> 
> [ Upstream commit f6ebedb09bb276256e084196e2322562dc4aac10 ]
> 
> Inside zlib_compress_folios(), each time we switch the input page cache,
> the @start is increased by PAGE_SIZE.
> 
> But for the incoming compression support for sector size < page size
> (previously we support compression only when the range is fully page
> aligned), this is not going to handle the following case:
> 
>     0          32K         64K          96K
>     |          |///////////||///////////|
> 
> @start has the initial value 32K, indicating the start filepos of the
> to-be-compressed range.
> 
> And when grabbing the first page as input, we always call "start +=
> PAGE_SIZE;".
> 
> But since @start is starting at 32K, it will be increased by 64K,
> resulting it to be 96K for the next range, causing incorrect input range
> and corruption for the future subpage compression.
> 
> Fix it by only increase @start by the input size.
> 
> Signed-off-by: Qu Wenruo <wqu@xxxxxxxx>
> Signed-off-by: David Sterba <dsterba@xxxxxxxx>
> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

Please drop this patch from stable, it's preparatory work and has
otherwise no effect.




[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