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

Fan Deng enetor at gmail.com
Tue Oct 10 23:18:09 UTC 2017


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.14.2.920.gcf0c67979c-goog



More information about the devel mailing list