Hello

we are using the pSOS interface on top of the Mercury core.
Under heavy stress conditions we see sporadically that messages are
getting lost.

Attached you find a test application (multi_queue.c)  that helped me
to find the issue and verify that the attached patch actually solves
the issue as well.
To reproduce the issue I start the test application several times in
parallel. The cpuload of the board will reach a value of 100%.
Maybe it is not needed to start several application in parallel, but
if I do so, I can reproduce the issue in a matter of seconds.
As soon as one message is lost, the test stops itself (exit). After
some time I observe that all applications have stopped ...

What the test basically does is sending messages between a manager and
2 worker threads and verify, by using sequence numbers in the
messages, that no message is lost.
The test might look too complex but it is basically a simulation of a
scenario that we perform in our real application.

The patch is ported from an older version of Xenomai.
I did not actually run the test with the latest version but by looking
to the code I can see that the issue is still present in the latest
version as well.

Best regards,
Ronny
-------------- next part --------------
A non-text attachment was scrubbed...
Name: multi_queue.c
Type: text/x-csrc
Size: 4747 bytes
Desc: not available
URL: 
<http://xenomai.org/pipermail/xenomai/attachments/20160205/5a4434b5/attachment.c>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: psos_queue_correction.patch
Type: application/octet-stream
Size: 2106 bytes
Desc: not available
URL: 
<http://xenomai.org/pipermail/xenomai/attachments/20160205/5a4434b5/attachment.obj>
_______________________________________________
Xenomai mailing list
Xenomai@xenomai.org
http://xenomai.org/mailman/listinfo/xenomai

Reply via email to