[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen, apic: Setup our own APIC driver and validator for APIC IDs.
On Mon, Mar 02, 2015 at 11:24:04AM +0000, David Vrabel wrote: > On 27/02/15 21:14, Konrad Rzeszutek Wilk wrote: > > Via CPUID masking and the different apic-> overrides we > > effectively make PV guests only but with the default APIC > > driver. That is OK as an PV guest should never access any > > APIC registers. However, the APIC is also used to limit the > > amount of CPUs if the APIC IDs are incorrect - and since we > > mask the x2APIC from the CPUID - any APIC IDs above 0xFF > > are deemed incorrect by the default APIC routines. > > > > As such add a new routine to check for APIC ID which will > > be only used if the CPUID (native one) tells us the system > > is using x2APIC. > > I was applying this but it breaks the build. Could you send me your .config please. > > arch/x86/built-in.o:(.data+0x2a28): undefined reference to > `xen_send_IPI_mask' > arch/x86/built-in.o:(.data+0x2a30): undefined reference to > `xen_send_IPI_mask_allbutself' > arch/x86/built-in.o:(.data+0x2a38): undefined reference to > `xen_send_IPI_allbutself' > arch/x86/built-in.o:(.data+0x2a40): undefined reference to > `xen_send_IPI_all' > arch/x86/built-in.o:(.data+0x2a48): undefined reference to > `xen_send_IPI_self' > > There are some minor things that I was going to fix up (see below). > > I also found the commit message a bit garbled so rewrote it to: > > x86/xen: Provide a "Xen PV" APIC driver to support >255 VCPUs > > Instead of mangling the default APIC driver, provide a Xen PV guest > specific one that explicitly provides appropriate methods. > > This allows use to report that all APIC IDs are valid, allowing dom0 > to boot with more than 255 VCPUs. > > Since the probe order of APIC drivers is link dependent, we add in an > late probe function to change to the Xen PV if it hadn't been done > during bootup. > > > > +static u32 xen_safe_apic_wait_icr_idle(void) > > +{ > > + return 0; > > +} > > + > > + > > Extra blank line. > > > +static int probe_xen(void) > > xen_apic_probe_pv > > > +static struct apic xen_apic = { > > static struct apic xen_pv_apic > > > +void __init xen_apic_check(void) > > static > > David _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |