From patchwork Mon Apr 8 02:58:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wen Yang X-Patchwork-Id: 10888763 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 44EE0922 for ; Mon, 8 Apr 2019 02:58:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2971C2857B for ; Mon, 8 Apr 2019 02:58:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1D23D285FD; Mon, 8 Apr 2019 02:58:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BBD202857B for ; Mon, 8 Apr 2019 02:58:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=hevy1Cv57/eaiW0oW4DgqgtbZ7h3kyccGWYJsgoABTQ=; b=BBM kpBmd9WeZAkHUa/T02hG6PX99twxOAcF54oaaFNGNdV2yYGJXQ+g4c3qQxzdAm6nXCLg0olFI7jbA C055IxM4rvLUF3HMUZ0Gsir9++WcvdpctwwGcaQfUHBnscNmVY7LCF0aHnNBZFYaofBQiYh1rX/d6 ygfkaS/eS+iRPH90wzsPJCRK6mP4Kxtj/RfMoJqkaQEsT92gj5/jRy8pNqLO1/36mCEB8LpWFocCX 1kxlDvCxW55vB04hKa9uDZcfAwXGALFs135rAxJozpIfvXNK+yC/COw0Rd/1/999O+g3UA0e/bPSZ 7uHhBBP7hwnFrPe22nlRMqGnRMo+CjQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hDKTw-00021P-WB; Mon, 08 Apr 2019 02:58:00 +0000 Received: from mxhk.zte.com.cn ([63.217.80.70]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hDKTr-00020C-Py; Mon, 08 Apr 2019 02:57:57 +0000 Received: from mse01.zte.com.cn (unknown [10.30.3.20]) by Forcepoint Email with ESMTPS id 4BFD6C7E27385016FDDC; Mon, 8 Apr 2019 10:57:46 +0800 (CST) Received: from notes_smtp.zte.com.cn ([10.30.1.239]) by mse01.zte.com.cn with ESMTP id x382vbvX094446; Mon, 8 Apr 2019 10:57:37 +0800 (GMT-8) (envelope-from wen.yang99@zte.com.cn) Received: from fox-host8.localdomain ([10.74.120.8]) by szsmtp06.zte.com.cn (Lotus Domino Release 8.5.3FP6) with ESMTP id 2019040810573655-7792468 ; Mon, 8 Apr 2019 10:57:36 +0800 From: Wen Yang To: linux-kernel@vger.kernel.org Subject: [PATCH v2] drm/meson: fix possible object reference leak Date: Mon, 8 Apr 2019 10:58:31 +0800 Message-Id: <1554692313-28882-1-git-send-email-wen.yang99@zte.com.cn> X-Mailer: git-send-email 1.8.3.1 X-MIMETrack: Itemize by SMTP Server on SZSMTP06/server/zte_ltd(Release 8.5.3FP6|November 21, 2013) at 2019-04-08 10:57:36, Serialize by Router on notes_smtp/zte_ltd(Release 9.0.1FP7|August 17, 2016) at 2019-04-08 10:57:37, Serialize complete at 2019-04-08 10:57:37 X-MAIL: mse01.zte.com.cn x382vbvX094446 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190407_195755_998153_9D7F0F21 X-CRM114-Status: GOOD ( 11.99 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: wang.yi59@zte.com.cn, Neil Armstrong , David Airlie , Kevin Hilman , dri-devel@lists.freedesktop.org, Markus Elfring , Daniel Vetter , linux-amlogic@lists.infradead.org, Wen Yang , linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP The call to of_graph_get_remote_port returns a node pointer with refcount incremented thus it must be explicitly decremented after the last usage. Detected by coccinelle with the following warnings: drivers/gpu/drm/meson/meson_dw_hdmi.c:725:2-8: ERROR: missing of_node_put; acquired a node pointer with refcount incremented on line 722, but without a corresponding object release within this function. Signed-off-by: Wen Yang Cc: Neil Armstrong Cc: David Airlie Cc: Daniel Vetter Cc: Kevin Hilman Cc: dri-devel@lists.freedesktop.org Cc: linux-amlogic@lists.infradead.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Cc: Markus Elfring --- v2->v1: convert a if statement into a ternary statement. drivers/gpu/drm/meson/meson_dw_hdmi.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c index 563953e..826b98b 100644 --- a/drivers/gpu/drm/meson/meson_dw_hdmi.c +++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c @@ -720,15 +720,10 @@ static bool meson_hdmi_connector_is_available(struct device *dev) /* If the endpoint node exists, consider it enabled */ remote = of_graph_get_remote_port(ep); - if (remote) { - of_node_put(ep); - return true; - } - of_node_put(ep); of_node_put(remote); - return false; + return remote ? true : false; } static int meson_dw_hdmi_bind(struct device *dev, struct device *master,