Sebastian Smolorz wrote:
> Hi Gilles,
>
> (...)
>
> Negate condition in macros local_irq_save_hw(x) and
> local_irq_restore_hw(x)
> (...)
> #define local_irq_save_hw(x) do { \
> local_save_flags_hw(x); \
> - if (raw_irqs_disabled_flags(x)) { \
> + if (!raw_irqs_disabled_flags(x)) { \
> local_irq_disable_hw_notrace(); \
> ipipe_trace_begin(0x80000001); \
> } \
> } while (0)
> #define local_irq_restore_hw(x) do { \
> - if (raw_irqs_disabled_flags(x)) \
> + if (!raw_irqs_disabled_flags(x)) \
> ipipe_trace_end(0x80000001); \
> local_irq_restore_hw_notrace(x); \
> } while (0)
> @@ -209,8 +207,6 @@ void __ipipe_restore_root(unsigned long flags);
> #define local_fiq_disable_hw() local_fiq_disable_hw_notrace()
> #define local_irq_restore_hw(flags) local_irq_restore_hw_notrace(flags)
>
> -#define irqs_disabled() irqs_disabled_hw()
> -
> #endif /* CONFIG_IPIPE */
Ah, this one was a nasty bug. It explains the odd behaviour of my I-pipe
patched kernel on AT91 when enabling the tracer. Thanks a lot.
--
Gilles Chanteperdrix.
_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main