From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754202AbXIDUfi (ORCPT ); Tue, 4 Sep 2007 16:35:38 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753474AbXIDUfa (ORCPT ); Tue, 4 Sep 2007 16:35:30 -0400 Received: from netops-testserver-3-out.sgi.com ([192.48.171.28]:47796 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753679AbXIDUfa (ORCPT ); Tue, 4 Sep 2007 16:35:30 -0400 Message-ID: <46DDC017.4040301@sgi.com> Date: Tue, 04 Sep 2007 13:29:11 -0700 From: Mike Travis User-Agent: Thunderbird 2.0.0.6 (X11/20070801) MIME-Version: 1.0 To: Christoph Lameter CC: Jack Steiner , Andi Kleen , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton , Kamalesh Babulal Subject: Re: [PATCH 3/6] x86: Convert cpu_sibling_map to be a per cpu variable (v2) (fwd) References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org [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... ;-) Thanks, Mike