On 01/18/2016 07:15 PM, Nicolas SCHURANDO wrote: > Hi Philippe, > > I switched to branch stable-3.0.x, retrieved your commit b411e4c > "lib/cobalt: add init trace points", and rebuilt everything. > > Below is what I have with the new --trace option. > > With static linking : > > -- xenomai_init() running > -- cobalt->init() > -- connected to Cobalt > -- memory locked > -- memory heaps mapped > -- boilerplate->init() > 0"000.070| WARNING: [main] Xenomai compiled with full debug enabled, > very high latencies expected > [--enable-debug=full] > -- initialization complete > [i] [main] Hello, launching root task ... > 0"001.747| BUG in wind_task_normalize_priority():
The init call for the VxWorks API is missing, which explains the issue. > > > I also decided to try with dynamic linking as well, to see if it was > producing anything different : > > -- xenomai_init() running > -- cobalt->init() > -- connected to Cobalt > -- memory locked > -- memory heaps mapped > -- boilerplate->init() > -- copperplate->init() > -- vxworks->init() The issue is most likely with static linking. It seems that the linker is eliminating the interface setup descriptor in lib/vxworks/init.c from the final executable; unfortunately this is a library constructor, connecting the API to the system. We already stumbled upon this issue, but no fix could be found at this point, with toolchains ignoring explicit requests to keep such symbols into the name list. Some (likely terminally ugly) work around may exist, but support for static linking is very low priority here, so I would advise to stay with dynamic linking for now. > 0"016.431| WARNING: [rpi-test-bug-wa] low resolution clock > disabled [--enable-lores-clock] --enable-lores-clock when configuring is required by tick-based APIs. -- Philippe. _______________________________________________ Xenomai mailing list [email protected] http://xenomai.org/mailman/listinfo/xenomai
