Messages in this thread | | | Date | Sun, 30 Mar 2008 19:29:40 -0700 | From | "Yinghai Lu" <> | Subject | Re: [PATCH 8/8] x86_64: Support for new UV apic |
| |
On Sun, Mar 30, 2008 at 7:26 PM, Jack Steiner <steiner@sgi.com> wrote: > > On Sun, Mar 30, 2008 at 07:23:07PM -0700, Yinghai Lu wrote: > > On Sun, Mar 30, 2008 at 7:12 PM, Jack Steiner <steiner@sgi.com> wrote: > > > > > Did you test it on non UV_X2APIC box? > > > > > > > > anyway the read_apic_id is totally wrong, even for your UV_X2APIC box. > > > > because id=apic_read(APIC_ID) will have apic_id at bits [31,24], and > > > > id |= __get_cpu_var(x2apic_extra_bits) is assuming that is on bits [5,0] > > > > > > > > so you even didn't test in your UV_X2APIC box! > > > > > > > > > > It works fine on UV_X2APIX boxes because the double shift does > > > not occur. However, support for UV_X2APIC is dependent on > > > x2apic code that is not yet in the tree. Once the APIC > > > is switched into x2apic mode, the apicid is located in the LOW > > > bits of the apicid register, not the HIGH bits. > > > > oh, so that will need have new version GET_APIC_ID too. > > Yes, although I think all the changes will be unified into > one non-inline function that is a combination of > GET_APIC_ID() & read_apic_id().
it seems x2apic patch should be applied before uv patch...
YH
| |