From: Yury Norov <ynorov@nvidia.com>
To: Russell King <linux@armlinux.org.uk>,
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
"Matthew Wilcox (Oracle)" <willy@infradead.org>,
Andrew Morton <akpm@linux-foundation.org>,
Andrzej Hajda <andrzej.hajda@intel.com>,
Danilo Krummrich <dakr@kernel.org>,
Douglas Anderson <dianders@chromium.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Jason Gunthorpe <jgg@ziepe.ca>, John Allen <john.allen@amd.com>,
Kees Cook <kees@kernel.org>, Leon Romanovsky <leon@kernel.org>,
Madhavan Srinivasan <maddy@linux.ibm.com>,
Marek Szyprowski <m.szyprowski@samsung.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Michael Ellerman <mpe@ellerman.id.au>,
Nicholas Piggin <npiggin@gmail.com>,
Rasmus Villemoes <linux@rasmusvillemoes.dk>,
Tom Lendacky <thomas.lendacky@amd.com>,
Yury Norov <yury.norov@gmail.com>,
linux-arm-kernel@lists.infradead.org,
linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-media@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Cc: Yury Norov <ynorov@nvidia.com>, sunyi <279644543@qq.com>
Subject: [PATCH 5/5] bitmap: Return size when no zero area is found
Date: Wed, 8 Jul 2026 22:03:11 -0400 [thread overview]
Message-ID: <20260709020312.133977-6-ynorov@nvidia.com> (raw)
In-Reply-To: <20260709020312.133977-1-ynorov@nvidia.com>
Return the bitmap size, rather than size + 1, when
bitmap_find_next_zero_area_off() cannot find a suitable area. This
matches the conventional find_bit() failure sentinel and still lets
callers detect failure with an out-of-range check.
Document the public failure contract as a value greater than or equal
to the bitmap size, without requiring callers to depend on the exact
sentinel.
Signed-off-by: Yury Norov <ynorov@nvidia.com>
---
include/linux/bitmap.h | 3 +++
lib/bitmap.c | 10 ++++------
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/include/linux/bitmap.h b/include/linux/bitmap.h
index 8854acf77869..33f175a30304 100644
--- a/include/linux/bitmap.h
+++ b/include/linux/bitmap.h
@@ -209,6 +209,9 @@ unsigned long bitmap_find_next_zero_area_off(unsigned long *map,
* The @align_mask should be one less than a power of 2; the effect is that
* the bit offset of all zero areas this function finds is multiples of that
* power of 2. A @align_mask of 0 means no alignment is required.
+ *
+ * Return: The bit offset of the found area or a value >= @size
+ * if no area is found.
*/
static __always_inline
unsigned long bitmap_find_next_zero_area(unsigned long *map,
diff --git a/lib/bitmap.c b/lib/bitmap.c
index b464d843f4eb..ed685127a107 100644
--- a/lib/bitmap.c
+++ b/lib/bitmap.c
@@ -424,6 +424,9 @@ EXPORT_SYMBOL(__bitmap_clear);
* The @align_mask should be one less than a power of 2; the effect is that
* the bit offset of all zero areas this function finds plus @align_offset
* is multiple of that power of 2.
+ *
+ * Return: The bit offset of the found area or a value greater than or equal
+ * to @size if no area is found.
*/
unsigned long bitmap_find_next_zero_area_off(unsigned long *map,
unsigned long size,
@@ -448,12 +451,7 @@ unsigned long bitmap_find_next_zero_area_off(unsigned long *map,
start = i;
}
- /*
- * Here, returning size + 1 is to maintain consistency
- * with the old version, where the return value is always
- * greater than size when no zero areas are found.
- */
- return size + 1;
+ return size;
}
EXPORT_SYMBOL(bitmap_find_next_zero_area_off);
--
2.53.0
prev parent reply other threads:[~2026-07-09 2:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-09 2:03 [PATCH 0/5] bitmap: align bitmap_find_next_zero_area_off() output with the rest of the API Yury Norov
2026-07-09 2:03 ` [PATCH 1/5] ARM: dma-mapping: Treat bitmap size as allocation failure Yury Norov
2026-07-09 5:58 ` Marek Szyprowski
2026-07-09 2:03 ` [PATCH 2/5] powerpc/msi: " Yury Norov
2026-07-09 2:03 ` [PATCH 3/5] crypto: ccp: " Yury Norov
2026-07-09 2:03 ` [PATCH 4/5] media: s5p-mfc: " Yury Norov
2026-07-09 5:57 ` Marek Szyprowski
2026-07-09 2:03 ` Yury Norov [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260709020312.133977-6-ynorov@nvidia.com \
--to=ynorov@nvidia.com \
--cc=279644543@qq.com \
--cc=akpm@linux-foundation.org \
--cc=andrzej.hajda@intel.com \
--cc=chleroy@kernel.org \
--cc=dakr@kernel.org \
--cc=davem@davemloft.net \
--cc=dianders@chromium.org \
--cc=herbert@gondor.apana.org.au \
--cc=jgg@ziepe.ca \
--cc=john.allen@amd.com \
--cc=kees@kernel.org \
--cc=leon@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=linux@rasmusvillemoes.dk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=m.szyprowski@samsung.com \
--cc=maddy@linux.ibm.com \
--cc=mchehab@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=npiggin@gmail.com \
--cc=thomas.lendacky@amd.com \
--cc=willy@infradead.org \
--cc=yury.norov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.