[Xenomai] Mixing Posix RT APIs and vxWorks APIs

Philippe Gerum rpm at xenomai.org
Thu Apr 7 19:56:14 CEST 2016

On 04/07/2016 07:56 AM, Alex Plits wrote:
>> -----Original Message-----
>> From: Gilles Chanteperdrix [mailto:gilles.chanteperdrix at xenomai.org]
>> Sent: Tuesday, April 05, 2016 10:03 AM
>> To: Alex Plits
>> Cc: xenomai at xenomai.org
>> Subject: Re: [Xenomai] Mixing Posix RT APIs and vxWorks APIs
>> On Mon, Apr 04, 2016 at 01:42:11PM +0000, Alex Plits wrote:
>>> Hi,
>>> We are currently porting some of our vxWorks  xenomai (copperplate)
>>> APIs we use in our application to Posix (cobalt I guess).
>> Well, if you do not know whether you are using Cobalt or Mercury, we can
>> not know it for you...
> [Alex Plits] 
> Cobalt :)
>>> We have started with the VxWorks "tasks" but it seems that we're
>>> getting strange behavior on The remaining VxWorks APIs when used from
>> the POSIX generated tasks (threads is the right word in posix) e.g. MsqQRecv
>> function gets segfault but when it is used From a VxWorks generated task it
>> works fine.
>>> I understand from the comments in code it should work but I was
>> wondering if there are known issues.
>>> We are using currently xenomai 3 rc-6 (I saw there were fixes in xenomai
>> 3.0.2).
>> Could you send a self-contained, simplest possible test case which causes the
>> problem for you, that we can test on the latest Xenomai release to see if the
>> problem has not been already fixed?
> [Alex Plits] 
> Attached code that is ripped from xenomai examples and initiates 2 threads using posix api then uses VxWorks MsgQ to communicate.
> Please advise if this code works as expected -  it seems that when we use WAIT_FOREVER flag we have an issue.
> Sorry in advance for the #ifdef's and comments in code -

For the record, 3.0-rc6 won't work properly with --enable-pshared
setups. For sane shared processing involving multiple copperplate-based
APIs (such as VxWorks), you do need 3.0.2.


More information about the Xenomai mailing list