From: Andi Kleen Date: Thu, 16 Feb 2006 22:42:13 +0000 (+0100) Subject: [PATCH] x86_64: Relax SRAT covers all memory check a bit X-Git-Tag: v2.6.16-rc4~32 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fdb9df942437c6c5d1a6928d5fff824466c3af67;p=linux-2.6 [PATCH] x86_64: Relax SRAT covers all memory check a bit Code was refusing good SRATs because about 12K got lost somewhere. Allow less than 1MB of difference before rejecting it. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds --- diff --git a/arch/x86_64/mm/srat.c b/arch/x86_64/mm/srat.c index cd25300726..809dc70675 100644 --- a/arch/x86_64/mm/srat.c +++ b/arch/x86_64/mm/srat.c @@ -228,7 +228,8 @@ static int nodes_cover_memory(void) } e820ram = end_pfn - e820_hole_size(0, end_pfn); - if (pxmram < e820ram) { + /* We seem to lose 3 pages somewhere. Allow a bit of slack. */ + if ((long)(e820ram - pxmram) >= 1*1024*1024) { printk(KERN_ERR "SRAT: PXMs only cover %luMB of your %luMB e820 RAM. Not used.\n", (pxmram << PAGE_SHIFT) >> 20,