[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110630131337.GT478@escobedo.osrc.amd.com>
Date: Thu, 30 Jun 2011 15:13:38 +0200
From: Hans Rosenfeld <hans.rosenfeld@....com>
To: Tejun Heo <tj@...nel.org>
CC: "Seidel, Conny" <Conny.Seidel@....com>,
"x86@...nel.org" <x86@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: 32bit NUMA and fakeNUMA broken for AMD CPUs
On Wed, Jun 29, 2011 at 12:15:17PM -0400, Tejun Heo wrote:
> Hans, can you please apply the following patch and post the boot log
> from both SPARSEMEM and DISCONTIGMEM kernels? On SPARSEMEM, it should
> reject NUMA config and boot w/ flatmem.
Bootlogs are attached. Now DISCONTIGMEM panics.
> diff --git a/arch/x86/include/asm/mmzone_32.h b/arch/x86/include/asm/mmzone_32.h
> index 224e8c5..0b6c75b 100644
> --- a/arch/x86/include/asm/mmzone_32.h
> +++ b/arch/x86/include/asm/mmzone_32.h
> @@ -34,15 +34,15 @@ static inline void resume_map_numa_kva(pgd_t *pgd) {}
> * 64Gb / 4096bytes/page = 16777216 pages
> */
> #define MAX_NR_PAGES 16777216
> -#define MAX_ELEMENTS 1024
> -#define PAGES_PER_ELEMENT (MAX_NR_PAGES/MAX_ELEMENTS)
> +#define MAX_SECTIONS 1024
> +#define PAGES_PER_SECTION (MAX_NR_PAGES/MAX_SECTIONS)
>
> extern s8 physnode_map[];
>
> static inline int pfn_to_nid(unsigned long pfn)
> {
> #ifdef CONFIG_NUMA
> - return((int) physnode_map[(pfn) / PAGES_PER_ELEMENT]);
> + return((int) physnode_map[(pfn) / PAGES_PER_SECTIONS]);
This probably should be PAGES_PER_SECTION.
> #else
> return 0;
> #endif
--
%SYSTEM-F-ANARCHISM, The operating system has been overthrown
View attachment "bootlog_discontigmem" of type "text/plain" (19454 bytes)
View attachment "bootlog_sparsemem" of type "text/plain" (6760 bytes)
Powered by blists - more mailing lists