diff options
author | Tejun Heo <tj@kernel.org> | 2014-09-02 20:46:02 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2014-09-02 20:46:02 +0200 |
commit | a63d4ac4ab6094c051a5a240260d16117a7a2f86 (patch) | |
tree | 49a72a515f8bb9a4f83bc68526187da462f20dd8 /mm | |
parent | percpu: move region iterations out of pcpu_[de]populate_chunk() (diff) | |
download | linux-a63d4ac4ab6094c051a5a240260d16117a7a2f86.tar.xz linux-a63d4ac4ab6094c051a5a240260d16117a7a2f86.zip |
percpu: make percpu-km set chunk->populated bitmap properly
percpu-km instantiates the whole chunk on creation and doesn't make
use of chunk->populated bitmap and leaves it as zero. While this
currently doesn't cause any problem, the inconsistency makes it
difficult to build further logic on top of chunk->populated. This
patch makes percpu-km fill chunk->populated on creation so that the
bitmap is always consistent.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Christoph Lameter <cl@linux.com>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/percpu-km.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/percpu-km.c b/mm/percpu-km.c index a6e34bc1aff4..67a971b7f745 100644 --- a/mm/percpu-km.c +++ b/mm/percpu-km.c @@ -67,6 +67,9 @@ static struct pcpu_chunk *pcpu_create_chunk(void) chunk->data = pages; chunk->base_addr = page_address(pages) - pcpu_group_offsets[0]; + + bitmap_fill(chunk->populated, nr_pages); + return chunk; } |