From a11b544b4a4d4895224671c6b59556666e0a7512 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Tue, 8 Aug 2023 01:39:08 +0200 Subject: ext2fs: Fix shift in find_next_zero_bit Shifting unsigned 32bit right by 32 bits is undefined, so avoid this. --- ext2fs/bitmap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ext2fs/bitmap.c b/ext2fs/bitmap.c index c440c8b1..cf7702d7 100644 --- a/ext2fs/bitmap.c +++ b/ext2fs/bitmap.c @@ -70,7 +70,8 @@ find_next_zero_bit(void *addr, unsigned long size, unsigned long offset) if (offset) { tmp = *(p++); - tmp |= ~0UL >> (32-offset); + if (offset) + tmp |= ~0UL >> (32-offset); if (size < 32) goto found_first; if (~tmp) -- cgit v1.2.3