include/tube: fix queue remove/add race
A receiver could get a spurious empty tube status, due to
receive_tube() racing with send_tube(). See the added comments into
the code for details about the resolution.
At this chance, guard against load/store tearing on shared pointers.
Pending issue: we still have a potential connectivity issue between
the prep and finish ops when pushing to a tube.
Signed-off-by:
Philippe Gerum <rpm@xenomai.org>
Please register or sign in to comment