2018-05-31 13:20:24

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1] bitmap: Drop unnecessary 0 check for u32 array operations

The nbits == 0 is safe to be supplied to the function body, so,
remove unnecessary checks in bitmap_to_arr32() and bitmap_from_arr32().

Signed-off-by: Andy Shevchenko <[email protected]>
---
lib/bitmap.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/lib/bitmap.c b/lib/bitmap.c
index 58f9750e49c6..33e95cd359a2 100644
--- a/lib/bitmap.c
+++ b/lib/bitmap.c
@@ -1132,14 +1132,10 @@ EXPORT_SYMBOL(bitmap_copy_le);
* @buf: array of u32 (in host byte order), the source bitmap
* @nbits: number of bits in @bitmap
*/
-void bitmap_from_arr32(unsigned long *bitmap, const u32 *buf,
- unsigned int nbits)
+void bitmap_from_arr32(unsigned long *bitmap, const u32 *buf, unsigned int nbits)
{
unsigned int i, halfwords;

- if (!nbits)
- return;
-
halfwords = DIV_ROUND_UP(nbits, 32);
for (i = 0; i < halfwords; i++) {
bitmap[i/2] = (unsigned long) buf[i];
@@ -1163,9 +1159,6 @@ void bitmap_to_arr32(u32 *buf, const unsigned long *bitmap, unsigned int nbits)
{
unsigned int i, halfwords;

- if (!nbits)
- return;
-
halfwords = DIV_ROUND_UP(nbits, 32);
for (i = 0; i < halfwords; i++) {
buf[i] = (u32) (bitmap[i/2] & UINT_MAX);
--
2.17.0



2018-05-31 14:48:46

by Yury Norov

[permalink] [raw]
Subject: Re: [PATCH v1] bitmap: Drop unnecessary 0 check for u32 array operations

On Thu, May 31, 2018 at 04:19:14PM +0300, Andy Shevchenko wrote:
> The nbits == 0 is safe to be supplied to the function body, so,
> remove unnecessary checks in bitmap_to_arr32() and bitmap_from_arr32().
>
> Signed-off-by: Andy Shevchenko <[email protected]>

Indeed. Thanks for the catch.

> ---
> lib/bitmap.c | 9 +--------
> 1 file changed, 1 insertion(+), 8 deletions(-)
>
> diff --git a/lib/bitmap.c b/lib/bitmap.c
> index 58f9750e49c6..33e95cd359a2 100644
> --- a/lib/bitmap.c
> +++ b/lib/bitmap.c
> @@ -1132,14 +1132,10 @@ EXPORT_SYMBOL(bitmap_copy_le);
> * @buf: array of u32 (in host byte order), the source bitmap
> * @nbits: number of bits in @bitmap
> */
> -void bitmap_from_arr32(unsigned long *bitmap, const u32 *buf,
> - unsigned int nbits)
> +void bitmap_from_arr32(unsigned long *bitmap, const u32 *buf, unsigned int nbits)

This line is 81 characters length, and it will trigger checkpatch warning.
(But I'm OK with it.)

> {
> unsigned int i, halfwords;
>
> - if (!nbits)
> - return;
> -
> halfwords = DIV_ROUND_UP(nbits, 32);
> for (i = 0; i < halfwords; i++) {
> bitmap[i/2] = (unsigned long) buf[i];
> @@ -1163,9 +1159,6 @@ void bitmap_to_arr32(u32 *buf, const unsigned long *bitmap, unsigned int nbits)
> {
> unsigned int i, halfwords;
>
> - if (!nbits)
> - return;
> -
> halfwords = DIV_ROUND_UP(nbits, 32);
> for (i = 0; i < halfwords; i++) {
> buf[i] = (u32) (bitmap[i/2] & UINT_MAX);
> --
> 2.17.0

Acked-by: Yury Norov <[email protected]>

2018-06-14 12:04:39

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v1] bitmap: Drop unnecessary 0 check for u32 array operations

On Thu, May 31, 2018 at 5:47 PM, Yury Norov <[email protected]> wrote:
> On Thu, May 31, 2018 at 04:19:14PM +0300, Andy Shevchenko wrote:
>> The nbits == 0 is safe to be supplied to the function body, so,
>> remove unnecessary checks in bitmap_to_arr32() and bitmap_from_arr32().

>> +void bitmap_from_arr32(unsigned long *bitmap, const u32 *buf, unsigned int nbits)
>
> This line is 81 characters length, and it will trigger checkpatch warning.
> (But I'm OK with it.)

I really don't care about ) at the end potentially not visible on the
screen (who is using nice old hardware terminals? :-) ).

> Acked-by: Yury Norov <[email protected]>

Thanks.

--
With Best Regards,
Andy Shevchenko