diff --git a/lib/genalloc.c b/lib/genalloc.c index 604ee0921fb..0218f4b3af3 100644 --- a/lib/genalloc.c +++ b/lib/genalloc.c @@ -247,7 +247,7 @@ void gen_pool_destroy(struct gen_pool *pool) end_bit = (chunk->end_addr - chunk->start_addr) >> order; nbytes = sizeof(struct gen_pool_chunk) + - (end_bit + BITS_PER_BYTE - 1) / BITS_PER_BYTE; + BITS_TO_LONGS(end_bit) * sizeof(long); bit = find_next_bit(chunk->bits, end_bit, 0); BUG_ON(bit < end_bit);