On Fri, 2009-09-25 at 12:05 +0200, Peter Soetens wrote:
> I'm trying to compile vanilla Linux 2.6.28.9 prepared with Xenomai
> 2.4.9.1 for x86-64, SMP.
> 
> I get this error in hal_common.c:
> 
> arch/x86/xenomai/hal-common.c:113:1: warning: "send_IPI_allbutself" redefined
> In file included from
> /home/kaltan/vbox/host/linux-2.6.28.9/arch/x86/include/asm/xenomai/hal_64.h:129,
>                 from
> /home/kaltan/vbox/host/linux-2.6.28.9/arch/x86/include/asm/xenomai/hal.h:75,
>                 from arch/x86/xenomai/hal-common.c:32:
> arch/x86/include/asm/mach-default/mach_ipi.h:42:1: warning: this is
> the location of the previous definition
> arch/x86/xenomai/hal-common.c: In function
> ‘rthal_broadcast_to_local_timers’:
> arch/x86/xenomai/hal-common.c:119: error: ‘apic’ undeclared (first use
> in this function)
> arch/x86/xenomai/hal-common.c:119: error: (Each undeclared identifier
> is reported only once
> arch/x86/xenomai/hal-common.c:119: error: for each function it appears in.)
> 

Right. There seems to be a slight adjustment to do in my code (also
reads "I badly screwed up, damn it").

diff --git a/ksrc/arch/x86/hal-common.c b/ksrc/arch/x86/hal-common.c
index 1497fee..7286987 100644
--- a/ksrc/arch/x86/hal-common.c
+++ b/ksrc/arch/x86/hal-common.c
@@ -107,7 +107,7 @@ static inline void send_IPI_allbutself(int vector)
                          | vector);
        rthal_local_irq_restore_hw(flags);
 }
-#elif defined(__i386__) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
 #include <mach_ipi.h>
 #else
 #define send_IPI_allbutself(vector)    apic->send_IPI_allbutself(vector)

Please let me know if that fixes the issue on your side as well.

PS: btw, I fail compiling 2.6.28.9 with KPROBES on, but this does not
look like a Xenomai issue this time.

> The macro is
> #define send_IPI_allbutself(vector)     apic->send_IPI_allbutself(vector)
> 
> and used in
> 
> DECLARE_LINUX_IRQ_HANDLER(rthal_broadcast_to_local_timers, irq, dev_id)
> {
> #ifdef CONFIG_SMP
>        send_IPI_allbutself(LOCAL_TIMER_VECTOR);
> #endif
>        rthal_trigger_irq(RTHAL_HOST_TICK_IRQ);
>        return IRQ_HANDLED;
> }
> 
> I have no idea where apic is supposed to come from.
> 
> .config attached for completeness.
> 
> Peter
> _______________________________________________
> Xenomai-help mailing list
> [email protected]
> https://mail.gna.org/listinfo/xenomai-help
-- 
Philippe.



_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to