[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171123144231.GD2384@linutronix.de>
Date: Thu, 23 Nov 2017 15:42:31 +0100
From: Sebastian Siewior <bigeasy@...utronix.de>
To: Mike Galbraith <efault@....de>
Cc: Mikulas Patocka <mpatocka@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...hat.com>,
Steven Rostedt <rostedt@...dmis.org>,
linux-rt-users@...r.kernel.org
Subject: Re: [PATCH PREEMPT RT] rt-mutex: fix deadlock in device mapper
On 2017-11-21 22:20:51 [+0100], Mike Galbraith wrote:
> On Tue, 2017-11-21 at 14:56 -0500, Mikulas Patocka wrote:
> >
> > If we don't have any reason why it is needed to unplug block requests when
> > a spinlock is taken - so let's not do this.
>
> That's perfectly fine. I guess I shouldn't have even mentioned having
> encountered unplug at mutex being insufficient.
While at it, I intend to drop
fs-jbd2-pull-your-plug-when-waiting-for-space.patch from the -RT queue
for v4.14 which does
--- a/fs/jbd2/checkpoint.c
+++ b/fs/jbd2/checkpoint.c
@@ -116,6 +116,8 @@ void __jbd2_log_wait_for_space(journal_t
nblocks = jbd2_space_needed(journal);
while (jbd2_log_space_left(journal) < nblocks) {
write_unlock(&journal->j_state_lock);
+ if (current->plug)
+ io_schedule();
mutex_lock(&journal->j_checkpoint_mutex);
/*
and is/was probably a workaround for the missing schedule while blocking
on mutex/rwsem.
> -Mike
Sebastian
Powered by blists - more mailing lists