Messages in this thread | | | Date | Fri, 11 Jul 2008 13:31:52 -0700 | From | Suresh Siddha <> | Subject | Re: [patch 00/26] x64, x2apic/intr-remap: Interrupt-remapping and x2apic support |
| |
On Fri, Jul 11, 2008 at 01:09:57PM -0700, Ingo Molnar wrote: > > * Ingo Molnar <mingo@elte.hu> wrote: > > > > > http://redhat.com/~mingo/misc/config-Thu_Jul_10_21_43_28_CEST_2008.bad > > > > > > Ingo, that was my stupid typo. Please apply this patch. BTW, we need > > > some more xen64 paravirt fixes in this area. I will look at it as > > > soon as possible. > > > > applied to tip/x86/x2apic - thanks Suresh. > > another problem is the redefinition of apic_read(), causing: > > arch/x86/xen/enlighten.c: In function ‘xen_patch': > arch/x86/xen/enlighten.c:1084: warning: label ‘patch_site' defined but not used > arch/x86/xen/enlighten.c: At top level: > arch/x86/xen/enlighten.c:1272: error: expected identifier before ‘(' token > arch/x86/xen/enlighten.c:1273: error: expected ‘}' before ‘.' token > > with this config: > > http://redhat.com/~mingo/misc/config-Fri_Jul_11_21_51_18_CEST_2008.bad > > the continued spaghetti in all the APIC variants is quite ugly. This > should all be handled via a single apic_ops template that should cover > the paravirt and native variants as well.
Ingo, I just posted the fix for this.
To cleanup the code:
struct pv_apic_ops { #ifdef CONFIG_X86_LOCAL_APIC /* * Direct APIC operations, principally for VMI. Ideally * these shouldn't be in this interface. */ void (*apic_write)(unsigned long reg, u32 v); void (*apic_write_atomic)(unsigned long reg, u32 v); u32 (*apic_read)(unsigned long reg);
Probably we should move the three above routines to basic apic_ops, which just deal with the apic HW accesses and retain the below for pv_apic_ops, which care more than the basic reg accesses. This will be true for both 32/64bits..
void (*setup_boot_clock)(void); void (*setup_secondary_clock)(void);
void (*startup_ipi_hook)(int phys_apicid, unsigned long start_eip, unsigned long start_esp); #endif };
Unless there is an objection, I will post the fix.
thanks, suresh -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |