Thread (26 messages) 26 messages, 5 authors, 2014-07-06

Re: Filesystem lockup with CONFIG_PREEMPT_RT

From: Mike Galbraith <hidden>
Date: 2014-06-27 19:11:57
Also in: lkml

Possibly related (same subject, not in this thread)

On Fri, 2014-06-27 at 14:19 -0400, Steven Rostedt wrote: 
On Fri, 27 Jun 2014 20:07:54 +0200
Mike Galbraith [off-list ref] wrote:
 
quoted
quoted
Why do we need the wakeup? the owner of the lock should wake it up
shouldn't it?
True, but that can take ages.
Can it? If the workqueue is of some higher priority, it should boost
the process that owns the lock. Otherwise it just waits like anything
else does.
No, not like everything else, preempt a lock holder.  IO that starts
moving upon context switch in a stock kernel can rot for ages in rt when
an IO packing task bumps into lock held by preempted task.  When there's
a prio delta on a lock, sure, PI kicks in to help a high prio task.. but
there is no PI help for high priority task waiting on IO stuck behind a
low prio task plug.

(you're taking workqueue, I'm talking IO, but the two meet in things
like raid too. you can't prioritize workqueues, and PI doesn't really
have a lot to do with the general issue of things happening or not
happening at context switch time, and consequences thereof)
I much rather keep the paradigm of the mainline kernel than to add a
bunch of hacks that can cause more unforeseen side effects that may
cause other issues.
The paradigm of mainline is to start IO on context switch, reason for
that is IO deadlock prevention.  We need to follow paradigm somehow.
That somehow really wants to be a tad prettier and more guaranteed than
my somehow :)

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