From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Tue, 4 Sep 2007 14:10:55 -0700 From: Andrew Morton Subject: Re: [PATCH 3/6] x86: Convert cpu_sibling_map to be a per cpu variable (v2) (fwd) Message-Id: <20070904141055.e00a60d7.akpm@linux-foundation.org> In-Reply-To: <46DDC017.4040301@sgi.com> References: <46DDC017.4040301@sgi.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org Return-Path: To: Mike Travis Cc: clameter@sgi.com, steiner@sgi.com, ak@suse.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kamalesh@linux.vnet.ibm.com List-ID: > On Tue, 04 Sep 2007 13:29:11 -0700 Mike Travis wrote: > [Sorry, I did not see this message until Christoph forwarded it to me. I'm > guessing we (SGI) still have a problem with our external spam filter?] > > > > > ---------- Forwarded message ---------- > > Date: Fri, 31 Aug 2007 19:49:03 -0700 > > From: Andrew Morton > > To: travis@sgi.com > > Cc: Andi Kleen , linux-mm@kvack.org, linux-kernel@vger.kernel.org, > > Christoph Lameter > > Subject: Re: [PATCH 3/6] x86: Convert cpu_sibling_map to be a per cpu variable > > (v2) > > > > On Fri, 24 Aug 2007 15:26:57 -0700 travis@sgi.com wrote: > > > >> Convert cpu_sibling_map from a static array sized by NR_CPUS to a > >> per_cpu variable. This saves sizeof(cpumask_t) * NR unused cpus. > >> Access is mostly from startup and CPU HOTPLUG functions. > > > > ia64 allmodconfig: > > > > kernel/sched.c: In function `cpu_to_phys_group': kernel/sched.c:5937: error: `per_cpu__cpu_sibling_map' undeclared (first use in this function) kernel/sched.c:5937: error: (Each undeclared identifier is reported only once > > kernel/sched.c:5937: error: for each function it appears in.) kernel/sched.c:5937: warning: type defaults to `int' in declaration of `type name' > > kernel/sched.c:5937: error: invalid type argument of `unary *' kernel/sched.c: In function `build_sched_domains': kernel/sched.c:6172: error: `per_cpu__cpu_sibling_map' undeclared (first use in this function) kernel/sched.c:6172: warning: type defaults to `int' in declaration of `type name' kernel/sched.c:6172: error: invalid type argument of `unary *' kernel/sched.c:6183: warning: type defaults to `int' in declaration of `type name' kernel/sched.c:6183: error: invalid type argument of `unary *' > > I'm thinking that the best approach would be to define a cpu_sibling_map() macro > to handle the cases where cpu_sibling_map is not a per_cpu variable? Perhaps > something like: > > #ifdef CONFIG_SCHED_SMT > #ifndef cpu_sibling_map > #define cpu_sibling_map(cpu) cpu_sibling_map[cpu] > #endif > #endif > > My question though, would include/linux/smp.h be the appropriate place for > the above define? (That is, if the above approach is the correct one... ;-) It'd be better to convert the unconverted architectures? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org