[PATCH v2] include/linux/bitops.h: Fix function fns

Chin-Chun Chen posted 1 patch 1 year, 10 months ago
include/linux/bitops.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH v2] include/linux/bitops.h: Fix function fns
Posted by Chin-Chun Chen 1 year, 10 months ago
Modified the function fns to resolve a calculation error by reducing n first to correctly determine the n-th set bit instead of n+1.

This commit improves the accuracy and reliability of the code.
---
Changes since v1:
* Clarified the commit message.
* Fixed the incorrect operation.

Signed-off-by: Chin-Chun Chen <chinchunchen2001@gmail.com>
---
 include/linux/bitops.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/bitops.h b/include/linux/bitops.h
index 2ba557e067fe..5842d7d03f19 100644
--- a/include/linux/bitops.h
+++ b/include/linux/bitops.h
@@ -258,7 +258,7 @@ static inline unsigned long fns(unsigned long word, unsigned int n)
 
 	while (word) {
 		bit = __ffs(word);
-		if (n-- == 0)
+		if (--n == 0)
 			return bit;
 		__clear_bit(bit, &word);
 	}

base-commit: 8f2c057754b25075aa3da132cd4fd4478cdab854
-- 
2.40.1