Commit b3b33d3c authored by Sunghyun Jin's avatar Sunghyun Jin Committed by Dennis Zhou

percpu: fix first chunk size calculation for populated bitmap

Variable populated, which is a member of struct pcpu_chunk, is used as a
unit of size of unsigned long.
However, size of populated is miscounted. So, I fix this minor part.

Fixes: 8ab16c43 ("percpu: change the number of pages marked in the first_chunk pop bitmap")
Cc: <stable@vger.kernel.org> # 4.14+
Signed-off-by: default avatarSunghyun Jin <mcsmonk@gmail.com>
Signed-off-by: default avatarDennis Zhou <dennis@kernel.org>
parent f75aef39
...@@ -1316,7 +1316,7 @@ static struct pcpu_chunk * __init pcpu_alloc_first_chunk(unsigned long tmp_addr, ...@@ -1316,7 +1316,7 @@ static struct pcpu_chunk * __init pcpu_alloc_first_chunk(unsigned long tmp_addr,
/* allocate chunk */ /* allocate chunk */
alloc_size = sizeof(struct pcpu_chunk) + alloc_size = sizeof(struct pcpu_chunk) +
BITS_TO_LONGS(region_size >> PAGE_SHIFT); BITS_TO_LONGS(region_size >> PAGE_SHIFT) * sizeof(unsigned long);
chunk = memblock_alloc(alloc_size, SMP_CACHE_BYTES); chunk = memblock_alloc(alloc_size, SMP_CACHE_BYTES);
if (!chunk) if (!chunk)
panic("%s: Failed to allocate %zu bytes\n", __func__, panic("%s: Failed to allocate %zu bytes\n", __func__,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment