* [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel
@ 2017-12-06 9:55 Vincent Berenz
2017-12-07 9:46 ` Philippe Gerum
0 siblings, 1 reply; 5+ messages in thread
From: Vincent Berenz @ 2017-12-06 9:55 UTC (permalink / raw)
To: xenomai
Hi,
We are currently moving from xenomai 2 to xenomai 3.
I installed xenomai 3.0.5, and all seems to be working, with low latency.
I am now trying to get our legacy code to work on xenomai 3 using the transition kit.
Our program compiles, but at runtime, on call to rt_pipe_create :
0"000.000| WARNING: [main] RTIPC/XDDP protocol not supported by kernel
Some info:
cat .config | grep RPIPC
returns:
CONFIG_XENO_DRIVERS_RTIPC=y
CONFIG_XENO_DRIVERS_RTIPC_XDDP=y
CONFIG_XENO_DRIVERS_RTIPC_IDDP=y
CONFIG_XENO_DRIVERS_RTIPC_BUFP=y
Following call to xeno-config + adding some definition via add_definitions in cmake, we are using these flags:
flags.make:CXX_FLAGS = -fPIC -Wl,--no-as-needed -ltrank -Wl,@/usr/xenomai/lib/modechk.wrappers -lalchemy -lcopperplate /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main -Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib -lcobalt -lmodechk -lpthread -lrt -I/usr/xenomai/include/trank -D__XENO_COMPAT__ -I/usr/xenomai/include/cobalt -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -D__COBALT__ -I/usr/xenomai/include/alchemy -pipe
and xeno-test starts with:
arith OK
bufp OK
cpu_affinity skipped (no kernel support)
iddp OK
leaks OK
net_packet_dgram skipped (no kernel support)
net_packet_raw skipped (no kernel support)
net_udp skipped (no kernel support)
posix_clock OK
posix_cond OK
posix_fork OK
mutex_trylock not supported
posix_mutex OK
posix_select OK
rtdm skipped (no kernel support)
sched_quota skipped (no kernel support)
sched_tp skipped (no kernel support)
setsched OK
sigdebug skipped (no kernel support)
timerfd OK
tsc OK
vdso_access OK
xddp OK
Anything we are doing wrong ?
Many thanks
Vincent
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel
2017-12-06 9:55 [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel Vincent Berenz
@ 2017-12-07 9:46 ` Philippe Gerum
2017-12-07 13:42 ` Vincent Berenz
0 siblings, 1 reply; 5+ messages in thread
From: Philippe Gerum @ 2017-12-07 9:46 UTC (permalink / raw)
To: Vincent Berenz, xenomai
On 12/06/2017 10:55 AM, Vincent Berenz wrote:
> Hi,
>
> We are currently moving from xenomai 2 to xenomai 3.
> I installed xenomai 3.0.5, and all seems to be working, with low latency.
>
> I am now trying to get our legacy code to work on xenomai 3 using the
> transition kit.
>
> Our program compiles, but at runtime, on call to rt_pipe_create :
> 0"000.000| WARNING: [main] RTIPC/XDDP protocol not supported by
> kernel
>
Do you observe the same issue with any of the native POSIX demo apps
available from <xenomai-install>/demo/xddp-*?
--
Philippe.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel
2017-12-07 9:46 ` Philippe Gerum
@ 2017-12-07 13:42 ` Vincent Berenz
2017-12-07 14:16 ` Philippe Gerum
0 siblings, 1 reply; 5+ messages in thread
From: Vincent Berenz @ 2017-12-07 13:42 UTC (permalink / raw)
To: Philippe Gerum, xenomai
Many thanks for the answer
The demos xddp-echo , xddp-label and xddp-stream seems all to be working ok.
As sanity check, I copied xddp-echo.c to my workspace and compiled it
with the rest of our code.
Compilation goes ok, but execution fails with message:
socket: Address family not supported by protocol
This brought my attention to this:
http://xenomai.org/pipermail/xenomai/2014-February/030113.html
which says:
"Your application is likely not wrapping POSIX symbols properly, calling
regular socket() instead of the Xenomai implementation. "
We do things this way, possibly something is missing ?
exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
--cflags"
OUTPUT_VARIABLE
XENOMAI_C_FLAGS)
exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
--ldflags"
OUTPUT_VARIABLE XENOMAI_LD_FLAGS)
set(CMAKE_C_FLAGS "${XENOMAI_C_FLAGS} ${CMAKE_C_FLAGS}")
set(CMAKE_CPP_FLAGS "${XENOMAI_C_FLAGS} ${CMAKE_CPP_FLAGS}")
# libraries / executable are linked against this later on
set(LAB_STD_LIBS alchemy copperplate cobalt modechk trank pthread
edit curses nsl glut GL GLU X11 Xmu m)
link_directories(${XENOMAI_ROOT}/lib /usr/lib /usr/X11/lib64
/usr/X11/lib /usr/lib64 ${CMAKE_LIBRARY_PATH})
add_definitions(${XENOMAI_C_FLAGS})
add_definitions(-D__XENO__)
add_definitions(-pipe)
add_definitions(-D_REENTRANT)
add_definitions(-D_GNU_SOURCE)
Best
Vincent
On 07.12.2017 10:46, Philippe Gerum wrote:
> On 12/06/2017 10:55 AM, Vincent Berenz wrote:
>> Hi,
>>
>> We are currently moving from xenomai 2 to xenomai 3.
>> I installed xenomai 3.0.5, and all seems to be working, with low latency.
>>
>> I am now trying to get our legacy code to work on xenomai 3 using the
>> transition kit.
>>
>> Our program compiles, but at runtime, on call to rt_pipe_create :
>> 0"000.000| WARNING: [main] RTIPC/XDDP protocol not supported by
>> kernel
>>
> Do you observe the same issue with any of the native POSIX demo apps
> available from <xenomai-install>/demo/xddp-*?
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel
2017-12-07 13:42 ` Vincent Berenz
@ 2017-12-07 14:16 ` Philippe Gerum
2017-12-11 11:28 ` Vincent Berenz
0 siblings, 1 reply; 5+ messages in thread
From: Philippe Gerum @ 2017-12-07 14:16 UTC (permalink / raw)
To: Vincent Berenz, xenomai
On 12/07/2017 02:42 PM, Vincent Berenz wrote:
> Many thanks for the answer
>
> The demos xddp-echo , xddp-label and xddp-stream seems all to be working
> ok.
>
> As sanity check, I copied xddp-echo.c to my workspace and compiled it
> with the rest of our code.
>
> Compilation goes ok, but execution fails with message:
>
> socket: Address family not supported by protocol
>
> This brought my attention to this:
>
> http://xenomai.org/pipermail/xenomai/2014-February/030113.html
>
> which says:
>
> "Your application is likely not wrapping POSIX symbols properly, calling
> regular socket() instead of the Xenomai implementation. "
>
> We do things this way, possibly something is missing ?
>
Yes, but this is most likely a different issue than the one observed
with rt_pipe_create() in compat mode.
> 0"000.000| WARNING: [main] RTIPC/XDDP protocol not supported by
kernel
There is likely an error number following this message, what is it?
> exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
> --cflags"
> OUTPUT_VARIABLE
> XENOMAI_C_FLAGS)
> exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
> --ldflags"
> OUTPUT_VARIABLE XENOMAI_LD_FLAGS)
>
You need --posix as well in the ldflags. However, caveat: adding this
flag will wrap all calls libcobalt shadows from the glibc (see
lib/cobalt/cobalt.wrappers). Or, you may omit --posix, explicitly
marking real-time calls by enclosing them with __RT().
e.g. __RT(socket(....));
Ugly, but in some cases handy when full wrapping is not a practical option.
--
Philippe.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel
2017-12-07 14:16 ` Philippe Gerum
@ 2017-12-11 11:28 ` Vincent Berenz
0 siblings, 0 replies; 5+ messages in thread
From: Vincent Berenz @ 2017-12-11 11:28 UTC (permalink / raw)
To: Philippe Gerum, xenomai
"You need --posix as well in the ldflags."
That worked, thanks a lot
On 07.12.2017 15:16, Philippe Gerum wrote:
> On 12/07/2017 02:42 PM, Vincent Berenz wrote:
>> Many thanks for the answer
>>
>> The demos xddp-echo , xddp-label and xddp-stream seems all to be working
>> ok.
>>
>> As sanity check, I copied xddp-echo.c to my workspace and compiled it
>> with the rest of our code.
>>
>> Compilation goes ok, but execution fails with message:
>>
>> socket: Address family not supported by protocol
>>
>> This brought my attention to this:
>>
>> http://xenomai.org/pipermail/xenomai/2014-February/030113.html
>>
>> which says:
>>
>> "Your application is likely not wrapping POSIX symbols properly, calling
>> regular socket() instead of the Xenomai implementation. "
>>
>> We do things this way, possibly something is missing ?
>>
> Yes, but this is most likely a different issue than the one observed
> with rt_pipe_create() in compat mode.
>
>> 0"000.000| WARNING: [main] RTIPC/XDDP protocol not supported by
> kernel
>
> There is likely an error number following this message, what is it?
>
>> exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
>> --cflags"
>> OUTPUT_VARIABLE
>> XENOMAI_C_FLAGS)
>> exec_program(${XENOMAI_ROOT}/bin/xeno-config ARGS "--skin=native
>> --ldflags"
>> OUTPUT_VARIABLE XENOMAI_LD_FLAGS)
>>
> You need --posix as well in the ldflags. However, caveat: adding this
> flag will wrap all calls libcobalt shadows from the glibc (see
> lib/cobalt/cobalt.wrappers). Or, you may omit --posix, explicitly
> marking real-time calls by enclosing them with __RT().
>
> e.g. __RT(socket(....));
>
> Ugly, but in some cases handy when full wrapping is not a practical option.
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-12-11 11:28 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-06 9:55 [Xenomai] Xenomai 3.0.5 : RTIPC/XDDP protocol not supported by kernel Vincent Berenz
2017-12-07 9:46 ` Philippe Gerum
2017-12-07 13:42 ` Vincent Berenz
2017-12-07 14:16 ` Philippe Gerum
2017-12-11 11:28 ` Vincent Berenz
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.