Re: [PATCH 3/6] x86: Convert cpu_sibling_map to be a per cpu variable (v2) (fwd)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On Tue, 04 Sep 2007 13:29:11 -0700 Mike Travis <[email protected]> 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 <[email protected]>
> > To: [email protected]
> > Cc: Andi Kleen <[email protected]>, [email protected], [email protected],
> >     Christoph Lameter <[email protected]>
> > 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 [email protected] 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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux