Thread (33 messages) 33 messages, 10 authors, 2016-11-09

Re: [PATCH] sched/rt: RT_RUNTIME_GREED sched feature

From: Daniel Bristot de Oliveira <hidden>
Date: 2016-11-07 18:49:19
Also in: lkml


On 11/07/2016 07:32 PM, Steven Rostedt wrote:
quoted
Excellent this would improve the situation with deadlocks as a result of
quoted
cgroup_locks not being released due to lack of workqueue processing.
?? What deadlocks do you see? I mean, can you show the situation that
throttling RT tasks will cause deadlock?

Sorry, but I'm just not seeing it.
It is not a deadlock in the theoretical sense of the word, but it is
more a side effect of the starvation - that looks like a deadlock.

There is a case where the removal of a cgroup dir calls
lru_add_drain_all(), that might schedule a kworker in the CPU that is
running the spinning-rt task. The kworker will starve - because they are
SCHED_OTHER by design, the lru_add_drain_all() will wait forever while
holding the cgroup lock and this will cause a lot of problems on other
tasks.

This problem was fixed on -rt using a -rt specific lock mechanism, but
the problem still exist in the non-rt kernel. Btw, this is just an
example of side effects of the starvation of non-rt-tasks. We can have
more examples...

-- Daniel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help