Xenomai IPC buffers between realtime and non realtime threads

53 Views Asked by At

I've got a realtime application using Xenomai with the Alchemy skin, which has to communicate between the realtime and non realtime threads.

To do this I've created some buffers using rt_buffer_create() as described here: https://doc.xenomai.org/v3/html/xeno3prm/group__alchemy__buffer.html However, trying to read them from the non-realtime threads (pthreads) using rt_buffer_read() returns error code -EINVAL which should mean bf is not a buffer descriptor, or len is greater than the actual buffer length. I have confirmed that the buffer is being successfully created and the correct handle passed to rt_buffer_read(), and that the read length is less than the buffer length.

The documentation does not mention anything about not using the Xenomai IPC buffers in a non-realtime thread, however I am wondering if it is not possible or if there is something else that I might be doing wrong.

Thanks.

0

There are 0 best solutions below