From 6839616ff2ac013c8b0fbeb2a97f6cf20976b9f3 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Mon, 2 Jun 2008 09:41:29 +0200 Subject: [PATCH] Fix off-by-one in generic ffz Signed-off-by: Jens Axboe --- lib/ffz.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ffz.h b/lib/ffz.h index 7fc7d456..4324f5a3 100644 --- a/lib/ffz.h +++ b/lib/ffz.h @@ -3,7 +3,7 @@ static inline int __ffs(int word) { - int r = 0; + int r = 1; if (!(word & 0xffff)) { word >>= 16; @@ -31,7 +31,7 @@ static inline int __ffs(int word) static inline int ffz(unsigned int bitmask) { - return ffs(~bitmask); + return ffs(~bitmask) - 1; } #endif -- 2.25.1