From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932710AbcHIQfS (ORCPT ); Tue, 9 Aug 2016 12:35:18 -0400 Received: from mail3-relais-sop.national.inria.fr ([192.134.164.104]:11352 "EHLO mail3-relais-sop.national.inria.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932604AbcHIQfP (ORCPT ); Tue, 9 Aug 2016 12:35:15 -0400 X-IronPort-AV: E=Sophos;i="5.28,495,1464645600"; d="scan'208";a="187295491" Date: Tue, 9 Aug 2016 18:35:06 +0200 (CEST) From: Julia Lawall X-X-Sender: jll@hadrien To: Mark Brown cc: linux-kernel@vger.kernel.org, kbuild-all@01.org Subject: Re: drivers/spi/spi.c:1160:3-9: preceding lock on line 1153 In-Reply-To: <20160809163131.GC9347@sirena.org.uk> Message-ID: References: <20160809163131.GC9347@sirena.org.uk> User-Agent: Alpine 2.10 (DEB 1266 2009-07-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 9 Aug 2016, Mark Brown wrote: > On Tue, Aug 09, 2016 at 06:19:13PM +0200, Julia Lawall wrote: > > > Looks worth checking. > > I don't really have any idea what this is trying to tell me, sorry. The important lines are the ones with the @. Line 1153 takes a lock and in line 1160 there is a return in error handling code with the lock still held. The semantic patch that reported this should also only give a report if there is some patch out of the function that releases the lock. Overall, it seems unusual to keep the lock in an error case. julia > > > > > julia > > > > ---------- Forwarded message ---------- > > Date: Wed, 10 Aug 2016 00:17:07 +0800 > > From: kbuild test robot > > To: kbuild@01.org > > Cc: Julia Lawall > > Subject: drivers/spi/spi.c:1160:3-9: preceding lock on line 1153 > > > > CC: kbuild-all@01.org > > CC: linux-kernel@vger.kernel.org > > TO: Mark Brown > > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > > head: 81abf2525827b29839a78fd55ab0699f033c41a5 > > commit: ef4d96ec4ad947360f48677b6007a4c77953b090 spi: Split bus and I/O locking > > date: 2 weeks ago > > :::::: branch date: 18 hours ago > > :::::: commit date: 2 weeks ago > > > > >> drivers/spi/spi.c:1160:3-9: preceding lock on line 1153 > > > > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > > git remote update linus > > git checkout ef4d96ec4ad947360f48677b6007a4c77953b090 > > vim +1160 drivers/spi/spi.c > > > > ffbbdd213 Linus Walleij 2012-02-22 1147 if (master->busy) > > ffbbdd213 Linus Walleij 2012-02-22 1148 was_busy = true; > > ffbbdd213 Linus Walleij 2012-02-22 1149 else > > ffbbdd213 Linus Walleij 2012-02-22 1150 master->busy = true; > > ffbbdd213 Linus Walleij 2012-02-22 1151 spin_unlock_irqrestore(&master->queue_lock, flags); > > ffbbdd213 Linus Walleij 2012-02-22 1152 > > ef4d96ec4 Mark Brown 2016-07-21 @1153 mutex_lock(&master->io_mutex); > > ef4d96ec4 Mark Brown 2016-07-21 1154 > > 49834de23 Mark Brown 2013-07-28 1155 if (!was_busy && master->auto_runtime_pm) { > > 49834de23 Mark Brown 2013-07-28 1156 ret = pm_runtime_get_sync(master->dev.parent); > > 49834de23 Mark Brown 2013-07-28 1157 if (ret < 0) { > > 49834de23 Mark Brown 2013-07-28 1158 dev_err(&master->dev, "Failed to power device: %d\n", > > 49834de23 Mark Brown 2013-07-28 1159 ret); > > 49834de23 Mark Brown 2013-07-28 @1160 return; > > 49834de23 Mark Brown 2013-07-28 1161 } > > 49834de23 Mark Brown 2013-07-28 1162 } > > 49834de23 Mark Brown 2013-07-28 1163 > > > > :::::: The code at line 1160 was first introduced by commit > > :::::: 49834de234f3cf592c3d242c889ca603db8e7050 spi: Provide core support for runtime PM during transfers > > > > :::::: TO: Mark Brown > > :::::: CC: Mark Brown > > > > --- > > 0-DAY kernel test infrastructure Open Source Technology Center > > https://lists.01.org/pipermail/kbuild-all Intel Corporation >