Dmitry Adamushko wrote:
> Hello,
> 
> following the recent discussion with Jan, here is a patch that aims at
> allowing xnintr_lock/unlock actually do what they were supposed to do in
> the first instance.
> 

[...]

> 
> --- xenomai/ksrc/nucleus/intr-old.c   2006-11-12 00:17:56.000000000 +0100
> +++ xenomai/ksrc/nucleus/intr.c       2006-11-12 00:22:15.000000000 +0100
> @@ -135,12 +135,14 @@ static inline void xnintr_shirq_lock(xni
>  {
>  #ifdef CONFIG_SMP
>       xnarch_atomic_inc(&shirq->active);
> +     xnarch_memory_barrier();
>  #endif
>  }
>  
>  static inline void xnintr_shirq_unlock(xnintr_shirq_t *shirq)
>  {
>  #ifdef CONFIG_SMP
> +     xnarch_memory_barrier();
>       xnarch_atomic_dec(&shirq->active);
>  #endif
>  }

As Dmitry and I are still a bit undecided about who to evolve such RCU
locks best but still face this SMP bug in the current code, we are
suggesting now to merge the patch above as-is for 2.3 - before things
get lost for the release.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to