On Fri, Nov 06, 2009 at 09:26:58AM +0100, Philippe Gerum wrote:
> Ouch. I just can't believe this went unnoticed for that long... Well, no
> wonder why then, the critical IPI never gets registered, so never
> detected by the pipeline core in __ipipe_grab_irq. Thanks for the heads
> up.
>
> This may make things work a little better:
Yes, works fine now. Thanks for your help.
Richard
> diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
> index 8968b24..a4fe229 100644
> --- a/arch/powerpc/kernel/smp.c
> +++ b/arch/powerpc/kernel/smp.c
> @@ -164,16 +164,16 @@ int smp_request_message_ipi(int virq, int msg)
> if (msg < 0 || msg > PPC_MSG_DEBUGGER_BREAK) {
> return -EINVAL;
> }
> -#if !defined(CONFIG_DEBUGGER) && !defined(CONFIG_KEXEC)
> - if (msg == PPC_MSG_DEBUGGER_BREAK) {
> - return 1;
> - }
> -#endif
> #ifdef CONFIG_IPIPE
> if (msg == PPC_MSG_DEBUGGER_BREAK)
> /* Piggyback the debugger IPI for the I-pipe. */
> __ipipe_register_ipi(virq);
> #endif
> +#if !defined(CONFIG_DEBUGGER) && !defined(CONFIG_KEXEC)
> + if (msg == PPC_MSG_DEBUGGER_BREAK) {
> + return 1;
> + }
> +#endif
>
> err = request_irq(virq, smp_ipi_action[msg], IRQF_DISABLED|IRQF_PERCPU,
> smp_ipi_name[msg], 0);
>
> --
> Philippe.
>
>
_______________________________________________
Xenomai-core mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-core