From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752445AbdFLPSH (ORCPT ); Mon, 12 Jun 2017 11:18:07 -0400 Received: from mail.kernel.org ([198.145.29.99]:55230 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752367AbdFLPSE (ORCPT ); Mon, 12 Jun 2017 11:18:04 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 280BB239E1 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=krzk@kernel.org From: Krzysztof Kozlowski To: "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson , Len Brown , Pavel Machek , Greg Kroah-Hartman , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 3/8] PM / Domains: Add lockdep asserts for domains list mutex Date: Mon, 12 Jun 2017 17:17:43 +0200 Message-Id: <20170612151748.7380-4-krzk@kernel.org> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20170612151748.7380-1-krzk@kernel.org> References: <20170612151748.7380-1-krzk@kernel.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add lockdep checks for holding mutex protecting the list of domains. This might expose misuse even though only file-scope functions use it for now. Signed-off-by: Krzysztof Kozlowski --- drivers/base/power/domain.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 983f086ab235..9d3d3c2a5979 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -726,6 +726,8 @@ static bool pm_genpd_present(const struct generic_pm_domain *genpd) { const struct generic_pm_domain *gpd; + lockdep_assert_held(&gpd_list_lock); + if (IS_ERR_OR_NULL(genpd)) return false; @@ -1321,6 +1323,8 @@ static int genpd_add_subdomain(struct generic_pm_domain *genpd, struct gpd_link *link, *itr; int ret = 0; + lockdep_assert_held(&gpd_list_lock); + if (IS_ERR_OR_NULL(genpd) || IS_ERR_OR_NULL(subdomain) || genpd == subdomain) return -EINVAL; @@ -1528,6 +1532,8 @@ static int genpd_remove(struct generic_pm_domain *genpd) { struct gpd_link *l, *link; + lockdep_assert_held(&gpd_list_lock); + if (IS_ERR_OR_NULL(genpd)) return -EINVAL; -- 2.9.3