Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp983722ybt; Wed, 17 Jun 2020 19:55:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxitOKvuRFRtVRYd05LsrNFxRQBWJBVXgWpKx8a3MAOuR0Kv/wSXreCYvtQ+pXMBSCnsGZh X-Received: by 2002:aa7:c3d3:: with SMTP id l19mr2136662edr.126.1592448950513; Wed, 17 Jun 2020 19:55:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592448950; cv=none; d=google.com; s=arc-20160816; b=AHUu58/uxEegUhVtLvSBazfT7n8h3od3qzIzv6u3PR0Ec82sep14gTpbNTlkPtZlfq wMExESN0Z6U3ssHMfSqHHcHlOY3V8GN4KYdf6FEaCPgZIbEW8Y5P6SBTbvREc+mSR0Ce wmYoabkWE+95VSh3LUwWoZqYOek12OhrJwoMs00qoqe7J80d6YW3XxzOiftsAfiiShvu mmGgfH8ruQSdl7tEP305/QO8obg6BUmGL6l/yWVtF+P0eS+18LOe1hEBzzov4M5v0MP6 P+coW4jufC9Zh63heBF4OoM1lQBTc+mOuqlOvuL/DACb56D9nBOvIhmsYuvYTWd3GZWl +jzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=g8f80hTQ3yf3m40DOLwE4Y25QfciFOg4AL2a/0b8fzk=; b=QxEbN5Xz18y1HI44IyUR+vJfkAi1zkXoDVQaGkoL04CukcfkFY2I+YPi12LyV9s/pZ ckyWDpD3ahKwSvTv7EoJ1Wen1e7AF8iEOFtSSF0wCpFt1TyB5CKi0fy2VBNjvAZYR8Kk aZQHsQC9falndhgSB3a5dTaKxy6GSV2WLyiQw+p9QT9Ms1pZNzTIZxD7qkYLXMAiANNo p7J/bObCjOoPWgk7o/HYcbT/dfnyVSmc+uJkyH4pTj2/m/zuUXaUzqXDfyTvqorZ4ZQH jFWZnUerLChjgaHdDcNtsG9UZaefrlx9uyGGKRsAKNlYW3l+G8MAl0CpSIynGUko8mxz 6/xQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=kqzskD90; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n26si1006158ejs.688.2020.06.17.19.55.28; Wed, 17 Jun 2020 19:55:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=kqzskD90; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387847AbgFRCvx (ORCPT + 99 others); Wed, 17 Jun 2020 22:51:53 -0400 Received: from mail.kernel.org ([198.145.29.99]:34818 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727931AbgFRBIu (ORCPT ); Wed, 17 Jun 2020 21:08:50 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8DD9B2193E; Thu, 18 Jun 2020 01:08:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592442530; bh=cuJrbmG3TmaVXuupUw8nPnl9fKIu2qpNoPb6EAre7wY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kqzskD90jYAIk7ndPRK5zUtMnByL2NytNBP0qQeiCgATasuD2X2OUCdYq/k/ausgg BXGQsFUpR5T8gFlIK4lFzUbNZ630vJ0FcWjmI4QS5kkdB918t0S+dyCHBTzEQtwJPE g998y8EQFN+PaHKvhmGi4+XkkC3LG6epNYUkXQ0A= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Qiushi Wu , Alexandre Belloni , Sasha Levin , linux-rtc@vger.kernel.org Subject: [PATCH AUTOSEL 5.7 033/388] rtc: mc13xxx: fix a double-unlock issue Date: Wed, 17 Jun 2020 21:02:10 -0400 Message-Id: <20200618010805.600873-33-sashal@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200618010805.600873-1-sashal@kernel.org> References: <20200618010805.600873-1-sashal@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Qiushi Wu [ Upstream commit 8816cd726a4fee197af2d851cbe25991ae19ea14 ] In function mc13xxx_rtc_probe, the mc13xxx_unlock() is called before rtc_register_device(). But in the error path of rtc_register_device(), the mc13xxx_unlock() is called again, which causes a double-unlock problem. Thus add a call of the function “mc13xxx_lock” in an if branch for the completion of the exception handling. Fixes: e4ae7023e182a ("rtc: mc13xxx: set range") Signed-off-by: Qiushi Wu Link: https://lore.kernel.org/r/20200503182235.1652-1-wu000273@umn.edu Signed-off-by: Alexandre Belloni Signed-off-by: Sasha Levin --- drivers/rtc/rtc-mc13xxx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/rtc/rtc-mc13xxx.c b/drivers/rtc/rtc-mc13xxx.c index afce2c0b4bd6..d6802e6191cb 100644 --- a/drivers/rtc/rtc-mc13xxx.c +++ b/drivers/rtc/rtc-mc13xxx.c @@ -308,8 +308,10 @@ static int __init mc13xxx_rtc_probe(struct platform_device *pdev) mc13xxx_unlock(mc13xxx); ret = rtc_register_device(priv->rtc); - if (ret) + if (ret) { + mc13xxx_lock(mc13xxx); goto err_irq_request; + } return 0; -- 2.25.1