linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Priority inheritance?
@ 2012-10-29 13:00 Stanislav Meduna
  2012-10-29 23:38 ` Thomas Gleixner
  0 siblings, 1 reply; 2+ messages in thread
From: Stanislav Meduna @ 2012-10-29 13:00 UTC (permalink / raw)
  To: linux-rt-users@vger.kernel.org

Hi,

strictly speaking not a linux-rt specific questions but I think
that the folks here have the needed experience and knowledge:
what is the relation of
  pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT);
and scheduler class used for a particular thread? Does the priority
inheritance work across all threads in the system or is it limited
to one scheduling class?

Specifically: my application has some SCHED_RR threads with fixed
priorities and realtime needs and a few that are quite low-prio,
actually have the SCHED_OTHER semantics and I don't want them
to count against the time spent in RT (keyword: throttler).

I need to occasionally queue data from from the RT-ones to
the low-prio ones, so for short periods of time I need to lock
a mutex. With it comes the question of priority inversion.

Can I leave the low-prio threads at SCHED_OTHER and rely on
the PTHREAD_PRIO_INHERIT to boost their priority in case they
were preempted with the lock held and the RT-thread needs
to lock it too, or do they have to be SCHED_RR too?

Thanks
-- 
                                    Stano

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Priority inheritance?
  2012-10-29 13:00 Priority inheritance? Stanislav Meduna
@ 2012-10-29 23:38 ` Thomas Gleixner
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Gleixner @ 2012-10-29 23:38 UTC (permalink / raw)
  To: Stanislav Meduna; +Cc: linux-rt-users@vger.kernel.org

On Mon, 29 Oct 2012, Stanislav Meduna wrote:
> Can I leave the low-prio threads at SCHED_OTHER and rely on
> the PTHREAD_PRIO_INHERIT to boost their priority in case they
> were preempted with the lock held and the RT-thread needs
> to lock it too

That's how priority inheritance is defined. In case of contention the
lock owner inherits the scheduling class and the priority of the
(higher class/priority) contender.

Thanks,

	tglx

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-10-29 23:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-29 13:00 Priority inheritance? Stanislav Meduna
2012-10-29 23:38 ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).