summaryrefslogtreecommitdiff
path: root/lib/genalloc.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2016-11-09 09:50:27 +0100
committerIngo Molnar <mingo@kernel.org>2016-11-09 17:07:11 +0100
commitca4b2df651a098a716e8cd8ebba79ba329e3dcc3 (patch)
tree0aa7f067fef0e7de075e7bd9dce2e81795e93e44 /lib/genalloc.c
parent59c6f278bdeea4147e8be92a3ed50a9907e60088 (diff)
parentb0b6e86846093c5f8820386bc01515f857dd8faa (diff)
Merge branch 'x86/urgent' into x86/cpu, to pick up dependent fix
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'lib/genalloc.c')
-rw-r--r--lib/genalloc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/genalloc.c b/lib/genalloc.c
index 0a1139644d32..144fe6b1a03e 100644
--- a/lib/genalloc.c
+++ b/lib/genalloc.c
@@ -292,7 +292,7 @@ unsigned long gen_pool_alloc_algo(struct gen_pool *pool, size_t size,
struct gen_pool_chunk *chunk;
unsigned long addr = 0;
int order = pool->min_alloc_order;
- int nbits, start_bit = 0, end_bit, remain;
+ int nbits, start_bit, end_bit, remain;
#ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG
BUG_ON(in_nmi());
@@ -307,6 +307,7 @@ unsigned long gen_pool_alloc_algo(struct gen_pool *pool, size_t size,
if (size > atomic_read(&chunk->avail))
continue;
+ start_bit = 0;
end_bit = chunk_size(chunk) >> order;
retry:
start_bit = algo(chunk->bits, end_bit, start_bit,