Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753543AbdHWHxS (ORCPT ); Wed, 23 Aug 2017 03:53:18 -0400 Received: from merlin.infradead.org ([205.233.59.134]:35402 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753359AbdHWHxP (ORCPT ); Wed, 23 Aug 2017 03:53:15 -0400 Date: Wed, 23 Aug 2017 09:53:00 +0200 From: Peter Zijlstra To: Byungchul Park Cc: Bart Van Assche , "linux-kernel@vger.kernel.org" , "linux-block@vger.kernel.org" , "sergey.senozhatsky.work@gmail.com" , "martin.petersen@oracle.com" , "axboe@kernel.dk" , "linux-scsi@vger.kernel.org" , "sfr@canb.auug.org.au" , "linux-next@vger.kernel.org" , kernel-team@lge.com Subject: Re: possible circular locking dependency detected [was: linux-next: Tree for Aug 22] Message-ID: <20170823075300.xhdwevdnvncezlol@hirez.programming.kicks-ass.net> References: <20170822183816.7925e0f8@canb.auug.org.au> <20170822104708.GA491@jagdpanzerIV.localdomain> <1503438234.2508.27.camel@wdc.com> <20170823000304.GK20323@X58A-UD3R> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170823000304.GK20323@X58A-UD3R> User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 948 Lines: 25 On Wed, Aug 23, 2017 at 09:03:04AM +0900, Byungchul Park wrote: > On Tue, Aug 22, 2017 at 09:43:56PM +0000, Bart Van Assche wrote: > The report is talking about the following lockup: > > A work in a worker A task work on exit to user > ------------------ --------------------------- > mutex_lock(&bdev->bd_mutex) > mutext_lock(&bdev->bd_mutex) > blk_execute_rq() > wait_for_completion_io_timeout(&A) > complete(&A) > > Is this impossible? > > To Peterz, > > Anyway I wanted to avoid lockdep reports in the case using a timeout > interface. Do you think it's still worth reporting the kind of lockup? Yes, people might not have expected to hit the timeout on this. They might think timeout means a dead device or something like that. I'd like to heard from the block folks if this was constructed thus on purpose though.