diff mbox series

bitmap: get last word mask from nr directly

Message ID 20190425032831.22551-1-richardw.yang@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series bitmap: get last word mask from nr directly | expand

Commit Message

Wei Yang April 25, 2019, 3:28 a.m. UTC
The value left in nr is the number of bits for the last word, which
could be calculate the last word mask directly.

Remove the unnecessary size.

Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
---
 util/bitmap.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Wei Yang June 14, 2019, 12:28 a.m. UTC | #1
On Thu, Apr 25, 2019 at 11:28:31AM +0800, Wei Yang wrote:
>The value left in nr is the number of bits for the last word, which
>could be calculate the last word mask directly.
>
>Remove the unnecessary size.

Ping...

>
>Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
>---
> util/bitmap.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
>diff --git a/util/bitmap.c b/util/bitmap.c
>index cb618c65a5..5aa60b8717 100644
>--- a/util/bitmap.c
>+++ b/util/bitmap.c
>@@ -160,7 +160,6 @@ int slow_bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1,
> void bitmap_set(unsigned long *map, long start, long nr)
> {
>     unsigned long *p = map + BIT_WORD(start);
>-    const long size = start + nr;
>     int bits_to_set = BITS_PER_LONG - (start % BITS_PER_LONG);
>     unsigned long mask_to_set = BITMAP_FIRST_WORD_MASK(start);
> 
>@@ -174,7 +173,7 @@ void bitmap_set(unsigned long *map, long start, long nr)
>         p++;
>     }
>     if (nr) {
>-        mask_to_set &= BITMAP_LAST_WORD_MASK(size);
>+        mask_to_set &= BITMAP_LAST_WORD_MASK(nr);
>         *p |= mask_to_set;
>     }
> }
>@@ -221,7 +220,6 @@ void bitmap_set_atomic(unsigned long *map, long start, long nr)
> void bitmap_clear(unsigned long *map, long start, long nr)
> {
>     unsigned long *p = map + BIT_WORD(start);
>-    const long size = start + nr;
>     int bits_to_clear = BITS_PER_LONG - (start % BITS_PER_LONG);
>     unsigned long mask_to_clear = BITMAP_FIRST_WORD_MASK(start);
> 
>@@ -235,7 +233,7 @@ void bitmap_clear(unsigned long *map, long start, long nr)
>         p++;
>     }
>     if (nr) {
>-        mask_to_clear &= BITMAP_LAST_WORD_MASK(size);
>+        mask_to_clear &= BITMAP_LAST_WORD_MASK(nr);
>         *p &= ~mask_to_clear;
>     }
> }
>-- 
>2.19.1
diff mbox series

Patch

diff --git a/util/bitmap.c b/util/bitmap.c
index cb618c65a5..5aa60b8717 100644
--- a/util/bitmap.c
+++ b/util/bitmap.c
@@ -160,7 +160,6 @@  int slow_bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1,
 void bitmap_set(unsigned long *map, long start, long nr)
 {
     unsigned long *p = map + BIT_WORD(start);
-    const long size = start + nr;
     int bits_to_set = BITS_PER_LONG - (start % BITS_PER_LONG);
     unsigned long mask_to_set = BITMAP_FIRST_WORD_MASK(start);
 
@@ -174,7 +173,7 @@  void bitmap_set(unsigned long *map, long start, long nr)
         p++;
     }
     if (nr) {
-        mask_to_set &= BITMAP_LAST_WORD_MASK(size);
+        mask_to_set &= BITMAP_LAST_WORD_MASK(nr);
         *p |= mask_to_set;
     }
 }
@@ -221,7 +220,6 @@  void bitmap_set_atomic(unsigned long *map, long start, long nr)
 void bitmap_clear(unsigned long *map, long start, long nr)
 {
     unsigned long *p = map + BIT_WORD(start);
-    const long size = start + nr;
     int bits_to_clear = BITS_PER_LONG - (start % BITS_PER_LONG);
     unsigned long mask_to_clear = BITMAP_FIRST_WORD_MASK(start);
 
@@ -235,7 +233,7 @@  void bitmap_clear(unsigned long *map, long start, long nr)
         p++;
     }
     if (nr) {
-        mask_to_clear &= BITMAP_LAST_WORD_MASK(size);
+        mask_to_clear &= BITMAP_LAST_WORD_MASK(nr);
         *p &= ~mask_to_clear;
     }
 }