diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | nscd/mem.c | 3 |
2 files changed, 5 insertions, 1 deletions
@@ -1,5 +1,8 @@ 2008-05-17 Ulrich Drepper <drepper@redhat.com> + * nscd/mem.c (markrange): Add assert to check entries are all + aligned. Small cleanup in bitmap use. + * nscd/nscd.h (mem_in_flight): Replace blockaddr field with blockoff of type nscd_ssize_t. * nscd/mem.c (gc): Simplify markrange call for on-flight blocks. diff --git a/nscd/mem.c b/nscd/mem.c index 903f91f18b..0bcb2aaef5 100644 --- a/nscd/mem.c +++ b/nscd/mem.c @@ -79,6 +79,7 @@ static void markrange (BITMAP_T *mark, ref_t start, size_t len) { /* Adjust parameters for block alignment. */ + assert ((start & BLOCK_ALIGN_M1) == 0); start /= BLOCK_ALIGN; len = (len + BLOCK_ALIGN_M1) / BLOCK_ALIGN; @@ -93,7 +94,7 @@ markrange (BITMAP_T *mark, ref_t start, size_t len) return; } - mark[elem++] |= 0xff << (start % BITS); + mark[elem++] |= ALLBITS << (start % BITS); len -= BITS - (start % BITS); } |