On Mon, 2011-01-31 at 15:47 +0100, Gilles Chanteperdrix wrote: > [email protected] wrote: > > In the Xenomai 2.4.x series there was a kernel option > > CONFIG_XENO_OPT_SELECT. Unfortunately there is no help available for > > this option and Google wasn´t very fertile. > > CONFIG_XENO_OPT_SELECT is an internal option of Xenomai. The options you > should be looking at are > > CONFIG_XENO_OPT_POSIX_SELECT > CONFIG_XENO_OPT_RTDM_SELECT > > These ones are documented, and selecting them, simply select > CONFIG_XENO_OPT_SELECT. So, the fact that CONFIG_XENO_OPT_SELECT is off > in your kernel configuration is off simply means that the other two > options are off. > > Could somebody tell me, > > what this option is for? I am asking, as we face some problems with > > "select" in a Xenomai task (task is stuck in select, was permanently > > marked as running (R in /proc/xenomai/sched) and lower priority tasks > > weren´t scheduled). > > This looks strange. Each call to select should result in a call to > Xenomai "select" syscall, if you are using the POSIX skin, which should > return -ENOSYS, then select should call the glibc select. Since > obviously what you want is to call glibc select directly, you can try > calling __real_select instead. > > Note that the issue with priorities you observe show that you have a > task with a priority higher than 0 using a glibc syscall, thereby > causing it to switch to secondary mode. The fact that lower priority > threads do not run is the effect of the "priority coupling", but the > real issue here is that a task with real-time priority is using a linux > syscall, which is something you should normally avoid. >
The caller should lose its RPI boost as soon as the regular select() syscall blocks it though - and I assume it does, so we do have a bug in 2.4.9 here (although I'm pretty sure it has been fixed in later releases). Having a shadow stuck in 'R'unnable mode in /proc/xenomai/sched is a good sign that something is broken deep inside. -- Philippe. _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
