mirror of https://gitee.com/openkylin/linux.git
xen: Use kcalloc() in xen_init_IRQ()
The init_IRQ() function is now called with slab allocator initialized. Therefore, we must not use the bootmem allocator in xen_init_IRQ(). Fixes the following boot-time warning: ------------[ cut here ]------------ WARNING: at mm/bootmem.c:535 alloc_arch_preferred_bootmem+0x27/0x45() Modules linked in: Pid: 0, comm: swapper Not tainted 2.6.30 #1 Call Trace: [<ffffffff8102d6e3>] ? warn_slowpath_common+0x73/0xb0 [<ffffffff810210d9>] ? pvclock_clocksource_read+0x49/0x90 [<ffffffff812e522f>] ? alloc_arch_preferred_bootmem+0x27/0x45 [<ffffffff812e5761>] ? ___alloc_bootmem_nopanic+0x39/0xc9 [<ffffffff812e57fa>] ? ___alloc_bootmem+0x9/0x2f [<ffffffff812e9e21>] ? xen_init_IRQ+0x25/0x61 [<ffffffff812d69ee>] ? start_kernel+0x1b5/0x29e ---[ end trace 4eaa2a86a8e2da22 ]--- Acked-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Tested-by: Christian Kujau <lists@nerdbynature.de> Reported-by: Christian Kujau <lists@nerdbynature.de> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: lists@nerdbynature.de Cc: jeremy.fitzhardinge@citrix.com LKML-Reference: <1246438278.22417.28.camel@penberg-laptop> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
789d03f584
commit
a70c352a37
|
@ -927,9 +927,9 @@ static struct irq_chip xen_dynamic_chip __read_mostly = {
|
|||
void __init xen_init_IRQ(void)
|
||||
{
|
||||
int i;
|
||||
size_t size = nr_cpu_ids * sizeof(struct cpu_evtchn_s);
|
||||
|
||||
cpu_evtchn_mask_p = alloc_bootmem(size);
|
||||
cpu_evtchn_mask_p = kcalloc(nr_cpu_ids, sizeof(struct cpu_evtchn_s),
|
||||
GFP_KERNEL);
|
||||
BUG_ON(cpu_evtchn_mask_p == NULL);
|
||||
|
||||
init_evtchn_cpu_bindings();
|
||||
|
|
Loading…
Reference in New Issue