Re: [PATCH 6.6.y v2 1/1] block: Fix bounce check logic in blk_queue_may_bounce()

From: Greg KH
Date: Fri Jul 25 2025 - 08:04:26 EST


On Fri, Jul 25, 2025 at 04:57:10PM +0530, Hardeep Sharma wrote:
> Buffer bouncing is needed only when memory exists above the lowmem region,
> i.e., when max_low_pfn < max_pfn. The previous check (max_low_pfn >=
> max_pfn) was inverted and prevented bouncing when it could actually be
> required.
>
> Note that bouncing depends on CONFIG_HIGHMEM, which is typically enabled
> on 32-bit ARM where not all memory is permanently mapped into the kernel’s
> lowmem region.
>
> Fixes: 9bb33f24abbd0 ("block: refactor the bounce buffering code")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Hardeep Sharma <quic_hardshar@xxxxxxxxxxx>
> ---
> Changelog v1..v2:
>
> * Updated subject line
>
> block/blk.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/block/blk.h b/block/blk.h
> index 67915b04b3c1..f8a1d64be5a2 100644
> --- a/block/blk.h
> +++ b/block/blk.h
> @@ -383,7 +383,7 @@ static inline bool blk_queue_may_bounce(struct request_queue *q)
> {
> return IS_ENABLED(CONFIG_BOUNCE) &&
> q->limits.bounce == BLK_BOUNCE_HIGH &&
> - max_low_pfn >= max_pfn;
> + max_low_pfn < max_pfn;
> }
>
> static inline struct bio *blk_queue_bounce(struct bio *bio,
> --
> 2.25.1
>
>

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree. Please read:
https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>