Gilles Chanteperdrix wrote:
Philippe Gerum wrote:
> > What about keeping SCHED_RR as the default scheduling policy and
> > requiring users to manually select SCHED_NORMAL in thread creation
> > attributes in order to create hybrid threads with pthread_create ?
> No objection a priori, but what would this buy us?
As a user, I would expect pthread_create and pthread_setschedparam to
allow the same scheduling policies and priorities.
Is your concern about having the POSIX skin in kernel space currently
assuming that SCHED_OTHER == SCHED_RR, which would be different than
Linux's perception in that case?
However, I really think that we should not rely on implicit rules when
we could avoid it (e.g. SCHED_RR as default), especially when those
rules are going to be most often overlooked (people are rather used to
default to SCHED_NORMAL/OTHER in the Linux sense).
What I suggested was to let people create normal threads using
pthread_create (likely conforming to the SCHED_OTHER policy), then use
the redirected pthread_setschedparam syscall (i.e. always applied to the
current thread) to promote them as Xenomai shadows, but leave them in
their original scheduling class. The same goes for rt_task_shadow. This
would be explicit actions that would not leave much room for "surprises".
Xenomai-core mailing list