diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2007-08-08 20:32:33 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-08-08 20:33:52 -0400 |
commit | b434e71933aa0519ee042c01419db76b7dcc058e (patch) | |
tree | 0aa4506224aea925a95631f4b1fe7c2c2d07de4f /arch/sparc64/kernel/trampoline.S | |
parent | 6c70b6fc7b6fc321636a014082d9e32333da1f80 (diff) |
[SPARC64]: Fix memory leak when cpu hotplugging.
Every time a cpu is added via hotplug, we allocate the per-cpu MONDO
queues but we never free them up. Freeing isn't easy since the first
cpu gets this memory from bootmem.
Therefore, the simplest thing to do to fix this bug is to allocate the
queues for all possible cpus at boot time.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/trampoline.S')
-rw-r--r-- | arch/sparc64/kernel/trampoline.S | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/sparc64/kernel/trampoline.S b/arch/sparc64/kernel/trampoline.S index a4dc01a3d238..9448595f9063 100644 --- a/arch/sparc64/kernel/trampoline.S +++ b/arch/sparc64/kernel/trampoline.S | |||
@@ -366,11 +366,8 @@ after_lock_tlb: | |||
366 | call hard_smp_processor_id | 366 | call hard_smp_processor_id |
367 | nop | 367 | nop |
368 | 368 | ||
369 | mov %o0, %o1 | 369 | call sun4v_register_mondo_queues |
370 | mov 0, %o0 | 370 | nop |
371 | mov 0, %o2 | ||
372 | call sun4v_init_mondo_queues | ||
373 | mov 1, %o3 | ||
374 | 371 | ||
375 | 1: call init_cur_cpu_trap | 372 | 1: call init_cur_cpu_trap |
376 | ldx [%l0], %o0 | 373 | ldx [%l0], %o0 |