[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] Fix asmlinkage functions
>>> On 19.06.12 at 21:12, Bastian Blank <waldi@xxxxxxxxxx> wrote: > According to gcc-4.7, "void bla(void)" is incompatible with "asmlinkage > void bla(void)". As asmlinkage expands to __attribute__((regparm(0))), > it is correct. > > The patch adds the missing asmlinkage to function declarations affected. > It is needed for 4.1 and 4.2. Iirc Keir had already taken steps towards removing all the (pointless) asmlinkage annotations, so if there are any left I think we'd rather see them removed than made consistent. Additionally I doubt there is such a problem in current -unstable, as the result of Keir's work was to have asmlinkage defined to nothing on x86 (so I can't see how gcc would be able to diagnose any inconsistencies). Is Debian (and 4.1) perhaps rather in need of some backport? Jan > Signed-off-by: Bastian Blank <waldi@xxxxxxxxxx> > > --- > Origin: debian > Forwarded: no > Last-Update: 2012-06-15 > > --- xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2.orig/xen/arch/x86/i8259.c > +++ xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2/xen/arch/x86/i8259.c > @@ -62,7 +62,7 @@ > IRQ(x,8), IRQ(x,9), IRQ(x,a), IRQ(x,b), \ > IRQ(x,c), IRQ(x,d), IRQ(x,e), IRQ(x,f) > > - static void (*interrupt[])(void) = { > + static void (*asmlinkage interrupt[])(void) = { > IRQLIST_16(0x0), IRQLIST_16(0x1), IRQLIST_16(0x2), IRQLIST_16(0x3), > IRQLIST_16(0x4), IRQLIST_16(0x5), IRQLIST_16(0x6), IRQLIST_16(0x7), > IRQLIST_16(0x8), IRQLIST_16(0x9), IRQLIST_16(0xa), IRQLIST_16(0xb), > --- > xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2.orig/xen/include/asm-x86/hvm/svm/intr.h > +++ xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2/xen/include/asm-x86/hvm/svm/intr.h > @@ -21,6 +21,8 @@ > #ifndef __ASM_X86_HVM_SVM_INTR_H__ > #define __ASM_X86_HVM_SVM_INTR_H__ > > -void svm_intr_assist(void); > +#include <asm/config.h> > + > +asmlinkage void svm_intr_assist(void); Furthermore, this ... > #endif /* __ASM_X86_HVM_SVM_INTR_H__ */ > --- > xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2.orig/xen/include/asm-x86/hvm/vmx/vmx.h > +++ xen-4.1.3~rc1+hg-20120614.a9c0a89c08f2/xen/include/asm-x86/hvm/vmx/vmx.h > @@ -63,7 +63,7 @@ > > void vmx_asm_vmexit_handler(struct cpu_user_regs); > void vmx_asm_do_vmentry(void); > -void vmx_intr_assist(void); > +asmlinkage void vmx_intr_assist(void); ... and this declaration could be dropped altogether (as having call sites in assembly files only). Jan > void vmx_do_resume(struct vcpu *); > void vmx_vlapic_msr_changed(struct vcpu *v); > void vmx_realmode(struct cpu_user_regs *regs); > -- > There is a multi-legged creature crawling on your shoulder. > -- Spock, "A Taste of Armageddon", stardate 3193.9 > > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxx > http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |