On Thu, 2006-06-29 at 12:48 +0200, Philippe Gerum wrote:
> > > Switching off priority adjustment for the root thread before moving a
> > > SCHED_FIFO shadow to SCHED_OTHER would prevent this side-effect. We'd
> > > need to add a per-thread status bit to check whether we should run
> > > xnpod_renice_root() or not for any given thread, and switch it on/off
> > > from __wrap_pthread_setschedparam.
> > >
> > This doesn't sound bad and would probably help low-prio threads also in
> > some other scenarios.
> I'm currently implementing that at nucleus level.
The priority coupling switch is in place now, the static config one is
called CONFIG_XENO_OPT_RPIDISABLE, and a dynamic flag as been added to
the xnthread status mask, namely XNRPIOFF (Root [thread] PI off). I've
only added the required support to control priority coupling between
both Xenomai and Linux schedulers, but refrained from choosing any
policy regarding how we are going to use it in the POSIX skin to solve
the pthread_setschedpram issue. I guess that more brain cycles are need
there, and I'm cowardly leaving this to Gilles.
Xenomai-core mailing list