• Yinghai Lu's avatar
    x86: 32bit numa srat fix early_ioremap leak · 9a73aa81
    Yinghai Lu authored
    on two node system (16g RAM) with numa config I got this crash:
    
    get_memcfg_from_srat: assigning address to rsdp
    RSD PTR  v0 [ACPIAM]
    ACPI: Too big length in RSDT: 92
    failed to get NUMA memory information from SRAT table
    NUMA - single node, flat memory mode
    Node: 0, start_pfn: 0, end_pfn: 153
     Setting physnode_map array to node 0 for pfns:
     0
    ...
    Pid: 0, comm: swapper Not tainted 2.6.26-rc4 #4
     [<80b41289>] hlt_loop+0x0/0x3
     [<8011efa0>] ? alloc_remap+0x50/0x70
     [<8079e32e>] alloc_node_mem_map+0x5e/0xa0
     [<8012e77b>] ? printk+0x1b/0x20
     [<80b590f6>] free_area_init_node+0xc6/0x470
     [<80b588fc>] ? __alloc_bootmem_node+0x2c/0x50
     [<80b58ad8>] ? find_min_pfn_for_node+0x38/0x70
     [<8012e77b>] ? printk+0x1b/0x20
     [<80b597c4>] free_area_init_nodes+0x254/0x2d0
     [<80b544d7>] zone_sizes_init+0x97/0xa0
     [<80b48a03>] setup_arch+0x383/0x530
     [<8012e77b>] ? printk+0x1b/0x20
     [<80b41aa4>] start_kernel+0x64/0x350
     [<80b412d8>] i386_start_kernel+0x8/0x10
     =======================
    
    this patch increases the acpi table limit to 32.
    Also match early_ioremap() with early_iounmap().
    Signed-off-by: default avatarYinghai Lu <yhlu.kernel@gmail.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    9a73aa81
srat_32.c 11.1 KB