[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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.