[PATCH 2/5] Reset free count properly in rtems_rfs_bitmap_map_clear_all().

Chris Johns chrisj at rtems.org
Tue Apr 10 05:11:11 UTC 2018


From: Fan Deng <enetor at gmail.com>

In rtems_rfs_bitmap_map_clear_all(), control->free is set to 'elements',
which is the number of elements in the bitmap. This is incorrect, as
control->free should contain the number of free bits, not elements.

This change fixes the logic and resets control->free to a correct value.
---
 cpukit/libfs/src/rfs/rtems-rfs-bitmaps.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cpukit/libfs/src/rfs/rtems-rfs-bitmaps.c b/cpukit/libfs/src/rfs/rtems-rfs-bitmaps.c
index 15a9050133..348fff6674 100644
--- a/cpukit/libfs/src/rfs/rtems-rfs-bitmaps.c
+++ b/cpukit/libfs/src/rfs/rtems-rfs-bitmaps.c
@@ -298,7 +298,7 @@ rtems_rfs_bitmap_map_clear_all (rtems_rfs_bitmap_control* control)
 
   elements = rtems_rfs_bitmap_elements (control->size);
 
-  control->free = elements;
+  control->free = control->size;
 
   for (e = 0; e < elements; e++)
     map[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;
-- 
2.15.1




More information about the devel mailing list