Messages in this thread | | | Date | Wed, 26 Mar 2008 00:24:02 -0300 | From | "Glauber Costa" <> | Subject | Re: [RFC 8/8] x86_64: Support for new UV apic |
| |
On Tue, Mar 25, 2008 at 1:31 PM, Jack Steiner <steiner@sgi.com> wrote: > On Tue, Mar 25, 2008 at 03:30:59PM +0100, Ingo Molnar wrote: > > > > * Jack Steiner <steiner@sgi.com> wrote: > > > > > Index: linux/arch/x86/kernel/genapic_64.c > > > > > @@ -69,7 +73,16 @@ void send_IPI_self(int vector) > > > > > > unsigned int get_apic_id(void) > > > { > > > - return (apic_read(APIC_ID) >> 24) & 0xFFu; > > > + unsigned int id; > > > + > > > + preempt_disable(); > > > + id = apic_read(APIC_ID); > > > + if (uv_system_type >= UV_X2APIC) > > > + id |= __get_cpu_var(x2apic_extra_bits); > > > + else > > > + id = (id >> 24) & 0xFFu;; > > > + preempt_enable(); > > > + return id; > > > > dont we want to put get_apic_id() into struct genapic instead? We > > already have ID management there. > > > > also, we want to unify 32-bit and 64-bit genapic code and just have > > genapic all across x86. > > Long term, I think that makes sense. However, I think that should be a > separate series of patches since there are significant differences between > the 32-bit and 64-bit genapic structs. > However, if you add more code, they'll keep diverging. The moment you touch them, and get your hands warmed up, is the perfect moment for an integration series.
-- Glauber Costa. "Free as in Freedom" http://glommer.net
"The less confident you are, the more serious you have to act."
| |