Received: by 2002:a05:6a10:9e8c:0:0:0:0 with SMTP id y12csp329666pxx; Wed, 28 Oct 2020 06:04:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxQaHnWQow5dfmIWR3ap9lwXL4/mrA6gVdhSEBMMMM45+sO7kJv6/Fs3QPMmVXUnsifN6T5 X-Received: by 2002:a50:f41a:: with SMTP id r26mr7380436edm.251.1603890248935; Wed, 28 Oct 2020 06:04:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603890248; cv=none; d=google.com; s=arc-20160816; b=VKkKzueYQTLiQmFWeV94KOiS+ssoqPygJamJSmMez17ng6iMGG0eS+QRh+EHjUaMiS /mKmwkMoo9Plq1JWo+t8aFVu92s580dnRv4WNx8CH4Q7NB0csvHkof1ojQLoiDYQOaQQ uwmfIhFCc/0mFGG1WHL5Y/I96+Eeir07PrXJAYfKiQ/jbylXytekM9YY6ajpnSZnCgmO OeN2Fkb/k1Py9xO0X+2b/APDCOsoh4hMFyi5gY0nzXOqkVHoMbAZ6xTcZZxYWlkZ19Dy /XMYC1EDcwwDXi1rCOZJa3ABrybT78/F3NL1RaaFzETROqSX2Vb5MxRqesXrMFvqsP/h Ifng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=OtBTLmxElwowSuphu/lQZzciRufEqzr2vGt2aZkYbBE=; b=BF+sCa3qrVZe74athuGSafg88MKhnPpkU3pQ+K6ZPrgUA1UBeTU5yZitK3yhWrfw4P aUncrajK9BiCqt8V5JE/HVJfWpnn/k39q6whjv5BQAhhQP4FFPoz7jBpn0Nqb97i70tK 7LOwGECho84Az8GOT028EPJgqjiJpJJgJPg3OxWwCj+j9g1ik4XW25Y2o1hPdRaqktQi SkmfaZUAsntx76Ugd/ofxnC4Ldel77aIkzhYozpeYUh93maFjm2RrSJQVNF9lseUCgK1 MNWjBOhjesS6XU3z3TGgGX2LlbRMKLD96hp94D8JS3j9hTvWZh8+GtAqUkKDZaOx36zl yPaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lLQCDGga; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w11si2719069ejq.533.2020.10.28.06.03.44; Wed, 28 Oct 2020 06:04:08 -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=lLQCDGga; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1799859AbgJ0Pdq (ORCPT + 99 others); Tue, 27 Oct 2020 11:33:46 -0400 Received: from mail.kernel.org ([198.145.29.99]:40562 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1798010AbgJ0PZ0 (ORCPT ); Tue, 27 Oct 2020 11:25:26 -0400 Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 79EBD20657; Tue, 27 Oct 2020 15:25:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1603812325; bh=cu538DtHzMhXc1ZnMXp5c7jVEEq+vs2oCCZEQgiUwII=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lLQCDGga6/m9pLU09xbCR6qMZZUiCs75l90VGwGj7kOQiY+9SVflMpdKQ3r/b+w6q /UIaffq0WULhT0RJaqD/qm57MqMy37eQrUMDR+FvjdSDTYdvIJqibG3rdA2sl2lyNX kEws9LY7m5MWJFYuMzyYZgrvlwfmgl0xuBVxD5Qc= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Qiushi Wu , Hans Verkuil , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.9 169/757] media: camss: Fix a reference count leak. Date: Tue, 27 Oct 2020 14:46:59 +0100 Message-Id: <20201027135458.524276033@linuxfoundation.org> X-Mailer: git-send-email 2.29.1 In-Reply-To: <20201027135450.497324313@linuxfoundation.org> References: <20201027135450.497324313@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Qiushi Wu [ Upstream commit d0675b67b42eb4f1a840d1513b5b00f78312f833 ] pm_runtime_get_sync() increments the runtime PM usage counter even when it returns an error code, causing incorrect ref count if PM runtime put is not called in error handling paths. Thus call pm_runtime_put_sync() if pm_runtime_get_sync() fails. Fixes: 02afa816dbbf ("media: camss: Add basic runtime PM support") Signed-off-by: Qiushi Wu Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Sasha Levin --- drivers/media/platform/qcom/camss/camss-csiphy.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c b/drivers/media/platform/qcom/camss/camss-csiphy.c index 03ef9c5f4774d..85b24054f35e6 100644 --- a/drivers/media/platform/qcom/camss/camss-csiphy.c +++ b/drivers/media/platform/qcom/camss/camss-csiphy.c @@ -176,8 +176,10 @@ static int csiphy_set_power(struct v4l2_subdev *sd, int on) int ret; ret = pm_runtime_get_sync(dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_sync(dev); return ret; + } ret = csiphy_set_clock_rates(csiphy); if (ret < 0) { -- 2.25.1