diff options
author | Tejun Heo <tj@kernel.org> | 2009-09-24 18:50:34 +0900 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-09-29 09:17:57 +0900 |
commit | fb59e72e7e10fd9d31f4e522f1b28254c2cc8a6c (patch) | |
tree | 56d4dccd4bafd1fbd61744cd09888f6d4c80abb5 /mm/percpu.c | |
parent | ffe0d5a575459ffe664b0762130b557f826fcace (diff) | |
download | lwn-fb59e72e7e10fd9d31f4e522f1b28254c2cc8a6c.tar.gz lwn-fb59e72e7e10fd9d31f4e522f1b28254c2cc8a6c.zip |
percpu: make pcpu_build_alloc_info() clear static buffers
pcpu_build_alloc_info() may be called multiple times when percpu is
falling back to different first chunk allocator. Make it clear static
buffers so that they don't contain values from previous runs.
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'mm/percpu.c')
-rw-r--r-- | mm/percpu.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mm/percpu.c b/mm/percpu.c index e5c4cbda6026..a64133f8af45 100644 --- a/mm/percpu.c +++ b/mm/percpu.c @@ -1347,6 +1347,10 @@ struct pcpu_alloc_info * __init pcpu_build_alloc_info( struct pcpu_alloc_info *ai; unsigned int *cpu_map; + /* this function may be called multiple times */ + memset(group_map, 0, sizeof(group_map)); + memset(group_cnt, 0, sizeof(group_map)); + /* * Determine min_unit_size, alloc_size and max_upa such that * alloc_size is multiple of atom_size and is the smallest |