diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2024-03-21 19:27:37 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2024-03-21 19:27:37 +0300 |
commit | 879e288692c899d52fcc01ae73121a771ea10d18 (patch) | |
tree | 43502002600d8cca7529f240cf12793ea76b4a80 | |
parent | 23956900041d968f9ad0f30db6dede4daccd7aa9 (diff) | |
parent | fd8ed16c2419e23b7496e008e5f7be98da7fe2d5 (diff) | |
download | linux-879e288692c899d52fcc01ae73121a771ea10d18.tar.xz |
Merge tag 'bitmap-for-6.9' of https://github.com/norov/linux
Pull bitmap updates from Yury Norov:
"A couple of random cleanups plus a step-down patch from Andy"
* tag 'bitmap-for-6.9' of https://github.com/norov/linux:
bitmap: Step down as a reviewer
lib/find: optimize find_*_bit_wrap
lib/find_bit: Fix the code comments about find_next_bit_wrap
-rw-r--r-- | MAINTAINERS | 1 | ||||
-rw-r--r-- | include/linux/find.h | 8 |
2 files changed, 4 insertions, 5 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 43b39956694a..6ce2ccc5668a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3598,7 +3598,6 @@ F: include/uapi/linux/bfs_fs.h BITMAP API M: Yury Norov <yury.norov@gmail.com> -R: Andy Shevchenko <andriy.shevchenko@linux.intel.com> R: Rasmus Villemoes <linux@rasmusvillemoes.dk> S: Maintained F: include/linux/bitfield.h diff --git a/include/linux/find.h b/include/linux/find.h index 5e4f39ef2e72..c69598e383c1 100644 --- a/include/linux/find.h +++ b/include/linux/find.h @@ -405,7 +405,7 @@ unsigned long find_next_and_bit_wrap(const unsigned long *addr1, { unsigned long bit = find_next_and_bit(addr1, addr2, size, offset); - if (bit < size) + if (bit < size || offset == 0) return bit; bit = find_first_and_bit(addr1, addr2, offset); @@ -413,8 +413,8 @@ unsigned long find_next_and_bit_wrap(const unsigned long *addr1, } /** - * find_next_bit_wrap - find the next set bit in both memory regions - * @addr: The first address to base the search on + * find_next_bit_wrap - find the next set bit in a memory region + * @addr: The address to base the search on * @size: The bitmap size in bits * @offset: The bitnumber to start searching at * @@ -427,7 +427,7 @@ unsigned long find_next_bit_wrap(const unsigned long *addr, { unsigned long bit = find_next_bit(addr, size, offset); - if (bit < size) + if (bit < size || offset == 0) return bit; bit = find_first_bit(addr, offset); |