• Andrew Jones's avatar
    xen: support CONFIG_MAXSMP · 900cba88
    Andrew Jones authored
    The MAXSMP config option requires CPUMASK_OFFSTACK, which in turn
    requires we init the memory for the maps while we bring up the cpus.
    MAXSMP also increases NR_CPUS to 4096. This increase in size exposed an
    issue in the argument construction for multicalls from
    xen_flush_tlb_others. The args should only need space for the actual
    number of cpus.
    
    Also in 2.6.39 it exposes a bootup problem.
    
    BUG: unable to handle kernel NULL pointer dereference at           (null)
    IP: [<ffffffff8157a1d3>] set_cpu_sibling_map+0x123/0x30d
    ...
    Call Trace:
    [<ffffffff81039a3f>] ? xen_restore_fl_direct_reloc+0x4/0x4
    [<ffffffff819dc4db>] xen_smp_prepare_cpus+0x36/0x135
    ..
    
    CC: stable@kernel.org
    Signed-off-by: default avatarAndrew Jones <drjones@redhat.com>
    [v2: Updated to compile on 3.0]
    [v3: Updated to compile when CONFIG_SMP is not defined]
    Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    900cba88
smp.c 12.7 KB