]> git.ipfire.org Git - thirdparty/linux.git/commit
badblocks: attempt to merge adjacent badblocks during ack_all_badblocks
authorLi Nan <linan122@huawei.com>
Thu, 27 Feb 2025 07:54:58 +0000 (15:54 +0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 6 Mar 2025 15:03:27 +0000 (08:03 -0700)
commit32e9ad4d11f69949ff331e35a417871ee0d31d99
tree9cfec9321e6a8acf37bc0fd9e50bffc6dde63d0f
parent270b68fee9688428e0a98d4a2c3e6d4c434a84ba
badblocks: attempt to merge adjacent badblocks during ack_all_badblocks

If ack and unack badblocks are adjacent, they will not be merged and will
remain as two separate badblocks. Even after the bad blocks are written
to disk and both become ack, they will still remain as two independent
bad blocks. This is not ideal as it wastes the limited space for
badblocks. Therefore, during ack_all_badblocks(), attempt to merge
badblocks if they are adjacent.

Fixes: aa511ff8218b ("badblocks: switch to the improved badblock handling code")
Signed-off-by: Li Nan <linan122@huawei.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Acked-by: Coly Li <colyli@kernel.org>
Link: https://lore.kernel.org/r/20250227075507.151331-4-zhengqixing@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/badblocks.c