I have the following problem using rtt_rosnode running under Xenomai
18.104.22.168 and ask for your help. It's an AMD Geode system with 500 MHz.
A few seconds after starting the real-time application, all Xenomai
threads seem to be frozen and the system log (dmesg) shows the following
[ 52.424032] Xenomai: watchdog triggered -- signaling runaway thread
[ 52.424032] Xenomai: watchdog triggered -- killing runaway thread
Restarting the real-time application alone does not help, you have to
restart the system after the watchdog has fired.
Disabling the watchdog or increasing the watchdog timeout freezes the
system after a while.
The orocos.log file does not contain any errors or unexpected messages.
The application is running a PeriodActivity with a frequency of 50Hz and
11 ports that publish data in each updateHook(). The ROS master and
other nodes are running on a remote system connected via Ethernet, but
not all of the publishers have subscribers. Is it possible, that this
overcharges the Geode system causing the RosPublishActivity::loop()
function to never return or might there be a more general problem with
rtt_rosnode and Xenomai? Does anybody use that combination?
Why does Xenomai bother with RosPublishActivity at all? Shouldn't that
activity run with scheduler ORO_SCHED_OTHER?
Thanks for some useful hints,