Prev: PCI / PCIe: Ask BIOS for control of all native services simultaneously
Next: max3107: Fix gpiolib support
From: Randy Dunlap on 27 Jul 2010 14:40 Stephen Rothwell wrote: > Hi all, > > Changes since 20100726: > > > The xen tree lost its build problems but gained a conflict against Linus' > tree. when X86_32=y, SMP=n, X86_LOCAL_APIC=n: drivers/built-in.o: In function `xen_callback_vector': (.text+0x41238): undefined reference to `first_system_vector' alloc_intr_gate() calls alloc_system_vector(), which uses first_system_vector. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Stefano Stabellini on 28 Jul 2010 09:20 On Tue, 27 Jul 2010, Randy Dunlap wrote: > Stephen Rothwell wrote: > > Hi all, > > > > Changes since 20100726: > > > > > > The xen tree lost its build problems but gained a conflict against Linus' > > tree. > > when X86_32=y, SMP=n, X86_LOCAL_APIC=n: > > drivers/built-in.o: In function `xen_callback_vector': > (.text+0x41238): undefined reference to `first_system_vector' > > alloc_intr_gate() calls alloc_system_vector(), which uses first_system_vector. this patch should solve the issue: --- alloc_system_vector: access first_system_vector when X86_LOCAL_APIC=y Currently alloc_system_vector reads and writes first_system_vector unconditionally while first_system_vector is only defined when CONFIG_X86_LOCAL_APIC=y. This patch makes sure first_system_vector is accessed only in that case. Signed-off-by: Stefano Stabellini <stefano.stabellini(a)eu.citrix.com> diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h index 617bd56..f83e055 100644 --- a/arch/x86/include/asm/desc.h +++ b/arch/x86/include/asm/desc.h @@ -341,8 +341,10 @@ static inline void alloc_system_vector(int vector) { if (!test_bit(vector, used_vectors)) { set_bit(vector, used_vectors); +#if defined(CONFIG_X86_LOCAL_APIC) if (first_system_vector > vector) first_system_vector = vector; +#endif } else BUG(); } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Jeremy Fitzhardinge on 28 Jul 2010 10:50 On 07/28/2010 06:11 AM, Stefano Stabellini wrote: > On Tue, 27 Jul 2010, Randy Dunlap wrote: >> Stephen Rothwell wrote: >>> Hi all, >>> >>> Changes since 20100726: >>> >>> >>> The xen tree lost its build problems but gained a conflict against Linus' >>> tree. >> when X86_32=y, SMP=n, X86_LOCAL_APIC=n: >> >> drivers/built-in.o: In function `xen_callback_vector': >> (.text+0x41238): undefined reference to `first_system_vector' >> >> alloc_intr_gate() calls alloc_system_vector(), which uses first_system_vector. > this patch should solve the issue: So this is a generic x86 build problem? J > --- > > alloc_system_vector: access first_system_vector when X86_LOCAL_APIC=y > > Currently alloc_system_vector reads and writes first_system_vector > unconditionally while first_system_vector is only defined when > CONFIG_X86_LOCAL_APIC=y. > This patch makes sure first_system_vector is accessed only in that case. > > Signed-off-by: Stefano Stabellini<stefano.stabellini(a)eu.citrix.com> > > diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h > index 617bd56..f83e055 100644 > --- a/arch/x86/include/asm/desc.h > +++ b/arch/x86/include/asm/desc.h > @@ -341,8 +341,10 @@ static inline void alloc_system_vector(int vector) > { > if (!test_bit(vector, used_vectors)) { > set_bit(vector, used_vectors); > +#if defined(CONFIG_X86_LOCAL_APIC) > if (first_system_vector> vector) > first_system_vector = vector; > +#endif > } else > BUG(); > } > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Stefano Stabellini on 28 Jul 2010 11:10 On Wed, 28 Jul 2010, Jeremy Fitzhardinge wrote: > On 07/28/2010 06:11 AM, Stefano Stabellini wrote: > > On Tue, 27 Jul 2010, Randy Dunlap wrote: > >> Stephen Rothwell wrote: > >>> Hi all, > >>> > >>> Changes since 20100726: > >>> > >>> > >>> The xen tree lost its build problems but gained a conflict against Linus' > >>> tree. > >> when X86_32=y, SMP=n, X86_LOCAL_APIC=n: > >> > >> drivers/built-in.o: In function `xen_callback_vector': > >> (.text+0x41238): undefined reference to `first_system_vector' > >> > >> alloc_intr_gate() calls alloc_system_vector(), which uses first_system_vector. > > this patch should solve the issue: > > So this is a generic x86 build problem? > It is, but nobody else is calling alloc_intr_gate with X86_LOCAL_APIC=n; being a static inline function it didn't cause any problems. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Randy Dunlap on 28 Jul 2010 11:50
On 07/28/10 06:11, Stefano Stabellini wrote: > On Tue, 27 Jul 2010, Randy Dunlap wrote: >> Stephen Rothwell wrote: >>> Hi all, >>> >>> Changes since 20100726: >>> >>> >>> The xen tree lost its build problems but gained a conflict against Linus' >>> tree. >> >> when X86_32=y, SMP=n, X86_LOCAL_APIC=n: >> >> drivers/built-in.o: In function `xen_callback_vector': >> (.text+0x41238): undefined reference to `first_system_vector' >> >> alloc_intr_gate() calls alloc_system_vector(), which uses first_system_vector. > > this patch should solve the issue: Acked-by: Randy Dunlap <randy.dunlap(a)oracle.com> Thanks. > --- > > alloc_system_vector: access first_system_vector when X86_LOCAL_APIC=y > > Currently alloc_system_vector reads and writes first_system_vector > unconditionally while first_system_vector is only defined when > CONFIG_X86_LOCAL_APIC=y. > This patch makes sure first_system_vector is accessed only in that case. > > Signed-off-by: Stefano Stabellini <stefano.stabellini(a)eu.citrix.com> > > diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h > index 617bd56..f83e055 100644 > --- a/arch/x86/include/asm/desc.h > +++ b/arch/x86/include/asm/desc.h > @@ -341,8 +341,10 @@ static inline void alloc_system_vector(int vector) > { > if (!test_bit(vector, used_vectors)) { > set_bit(vector, used_vectors); > +#if defined(CONFIG_X86_LOCAL_APIC) > if (first_system_vector > vector) > first_system_vector = vector; > +#endif > } else > BUG(); > } -- ~Randy *** Remember to use Documentation/SubmitChecklist when testing your code *** -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |