Re: [PATCH] dm cache: fix divide error in too_many_discard_blocks()
From: syzbot
Date: Fri Nov 06 2026 - 13:11:28 EST
> #syz test
This crash does not have a reproducer. I cannot test it.
>
> diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
> index 1a5072425c4a..2d40d6047ef1 100644
> --- a/drivers/md/dm-cache-target.c
> +++ b/drivers/md/dm-cache-target.c
> @@ -2383,9 +2383,7 @@ static int create_cache_policy(struct cache *cache, struct cache_args *ca,
> static bool too_many_discard_blocks(sector_t discard_block_size,
> sector_t origin_size)
> {
> - (void) sector_div(origin_size, discard_block_size);
> -
> - return origin_size > MAX_DISCARD_BLOCKS;
> + return div64_u64(origin_size, discard_block_size) > MAX_DISCARD_BLOCKS;
> }
>
> static sector_t calculate_discard_block_size(sector_t cache_block_size,
> --
> 2.43.0
>