> >> Would (a) a SCHED_RR/50 thread be run ahead of a SCHED_FIFO/49 thread?

We have three answers, yes, no, and maybe. According to the kernel scheduler the
answer is yes. The kernel does not actually have the final say here though which is
why the answers no and maybe can be equally valid. Depending on the code involved
the SCHED_RR/50 thread might be using semaphores which can cause priority
inversion depending on who owns the semaphore.

The RR/50 can request a semaphore being held my a FIFO/48 and it will pend. The
FIFO/49 can now pre-empt the FIFO/48 and hence also pre-empt the RR/50. This
may not be what was anticipated. It is bad programming but unusually easy to do,
especially with regards to audio thread, midi threads, GUI threads and all the
other gory details of audio app programming.

I only bring it up since I read the original post to concern pre-emption of high pri
threads and there are ways this can happen depending on what you are doing.

Other people on the list can probably give you better explanation of the issue and
perhaps even explain whether it is even relevant?

Regards, nick.