From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752841AbdKWOu6 convert rfc822-to-8bit (ORCPT ); Thu, 23 Nov 2017 09:50:58 -0500 Received: from mout.gmx.net ([212.227.15.18]:49385 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751934AbdKWOu5 (ORCPT ); Thu, 23 Nov 2017 09:50:57 -0500 Message-ID: <1511448640.6505.30.camel@gmx.de> Subject: Re: [PATCH PREEMPT RT] rt-mutex: fix deadlock in device mapper From: Mike Galbraith To: Sebastian Siewior Cc: Mikulas Patocka , Thomas Gleixner , linux-kernel@vger.kernel.org, Ingo Molnar , Steven Rostedt , linux-rt-users@vger.kernel.org Date: Thu, 23 Nov 2017 15:50:40 +0100 In-Reply-To: <20171123144231.GD2384@linutronix.de> References: <20171117145744.t366d2ztxj2qqnco@linutronix.de> <1511030230.12841.42.camel@gmx.de> <1511234430.7672.26.camel@gmx.de> <1511255884.7672.49.camel@gmx.de> <1511285619.30074.13.camel@gmx.de> <1511299251.30074.72.camel@gmx.de> <20171123144231.GD2384@linutronix.de> Content-Type: text/plain; charset="ISO-8859-15" X-Mailer: Evolution 3.20.5 Mime-Version: 1.0 Content-Transfer-Encoding: 8BIT X-Provags-ID: V03:K0:PSAAkHRS7nTvzFPtIVyFTmRI7RRlOcC84qHEim00dDyB4Ry4go0 dn+YVmvA0d7VUqXRqxZhXApeQVVwlBUPvuUJ3/P58QilLy/soo9EhuDKXuWfr+4tZzVDWMI xLB6A8j5hdn5DS25JJ3/138nJ9PcONdUks4xSN/yREekAvhF8sAwyr4U5zs3h1vB2DkhG3Q zGQY0WCvEUsqO82F6OoAA== X-UI-Out-Filterresults: notjunk:1;V01:K0:2oML6d0msW8=:GfyTKhEbWi4BVazreVHxPT 6d4+KgSBMVphnhkVkrS8tb2zAs59UXXKTrrft4+nTzczpanaV3vgb1xjWWfDqT65Fj+tDIhXN 72WbdgdgrqmEsjMrVxCOluIt3MEOCKb8vYu3ug3dHavRJjmiF83XJ75qWQbABFxtpeMYuBE+X UOBC3v5IcuistCxkNd1wcoq8jJPitl+6QXs1UrxIJ52/Dbp1vnqeICtd0o5ut4ePbGjnRRbVU Y8lFD5kkY9EO8gupOJTK+Uh4bspsaGMyxiLBcifgG7tQHut0hi94A/WFp/smEbPGh0vThi28z jf1UoG7+yG3v7zxhv54aVwFYud/KhgYwB/BBF5YG7MeAKjX9pgpRhiaDj5D37lwpWugg6HPzm GkCd45riS96nYV5Od/upUZL4J+ALjKSn9omEDH7u8KzJiCX3uvV4P2EfZcI74qOz3AxX7pMBf JCme0db5jfiXLSJb8LfOwYl0vBVeW9ZS1zGJ43ygKe7Ol2ss5FW7nmnd/slJ2XSbXMuG7o+G7 wf/qSt0/VYKpknn1ykB+Xj93Tml3TDRIAwnCUD7KgBjDvPb7SOf+bsTKc/QHAZOmnvUlGr8ji fGCMlh5AHdwuGnxZ0AEpYw4nZOzkAh6zbMDlZUjcCnFsyzCY4nQ3ilVKHYmOKHNf0IqxuDj/d RhH8BnHornNLmCvPedkomNM5/ooNX5jSEoh4FQMTbvnRXQhYfjVZDMCdB7OzETj+LHEfqqqrt UPAoMCLIxQmr7WUKHT9WEuvpsBCCoE+Rq9VadBdu8AaA+Jq4rq0iWlbfJcnoa6wZmpPIEoRn0 b1IrS7INNdb7ST9nWyz7nG4FnZMMTeSaiT4H6BEBqzLs687K+Q= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2017-11-23 at 15:42 +0100, Sebastian Siewior wrote: > 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. Yeah, that's now code without a meaningful job. -Mike