Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp5769645imm; Tue, 12 Jun 2018 13:03:04 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLD9dNf1pw8WqP7eZd2qh9tLKFhUBgsEXMnkdUbkcpgX9NjJTTkbNwaPWJ+IAF8Fe3dplmi X-Received: by 2002:a17:902:b410:: with SMTP id x16-v6mr1895925plr.324.1528833784107; Tue, 12 Jun 2018 13:03:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528833784; cv=none; d=google.com; s=arc-20160816; b=tIemB4P+OyyGptMQsrvYZ0f9oeLhJdG61x6ReOvo6VLkK/BkEYJENqkoNAVB2h0wfg VzyWb0zIaXQdhNTXSUlgse7vM8emC6/YEcN4oSji7cMpe6r6wANCUnBeLBvhl33z2KG5 bTBLPrr08foENOQQjtf5vZGi6h89MRH6s0AViIwqXUdDQe92ReAy/dcLvss5cwsc8LrF m83aUjOb+fZknLnqNjQWeMmTh2cK94D7L7fnfgsJHxuCuc9LWGztQK/xo0tFEeGM8OzI MsDySQc1D1vvCKR6yTBvzhYH49LwGqYiMRTLGOPx9sg+C4i9Bq8Xin/ZJ1a/dODr9zgE QChQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=hAm9pGchaj4L7TRYVDtIjMlqZxtnRkC10J3ihWXzQ/c=; b=x+GWUTyL6kCN3WqFHiB1oYya+4MwSDJp+wEVQe7Oj9szokWG9tAJl6xJCPvFZAFEGs Pspu8Qnvl3KSXXHevWJ22T4mllHPwcBR5pu00miBi6d4/ST1nTk1bpsFZVA+ijIfEXkk Xpg1Do7axwpB+G+Wj3G/l5B9l6S5mhfdFVizV+Rb5AHEq/fczA9ES0Jb5Y7THyNxJQcH c2lHXqLpQiLFFpAV3ljHK3vKd7er7CJsCAyoTsb1IrN9XzXXhf6/AINgjQb9Sn/TrQjB DGkeY+hkAW2aBL0btui3La1bldJ4di89KxvGuwTJ4/WyiYQWMjp9zqdzqw1ovOEPSYUe nJBQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y16-v6si839251pfn.111.2018.06.12.13.02.49; Tue, 12 Jun 2018 13:03:04 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934053AbeFLUCH (ORCPT + 99 others); Tue, 12 Jun 2018 16:02:07 -0400 Received: from mailoutvs34.siol.net ([185.57.226.225]:38331 "EHLO mail.siol.net" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933942AbeFLUCF (ORCPT ); Tue, 12 Jun 2018 16:02:05 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.siol.net (Zimbra) with ESMTP id 948E65221FA; Tue, 12 Jun 2018 22:02:03 +0200 (CEST) X-Virus-Scanned: amavisd-new at psrvmta12.zcs-production.pri Received: from mail.siol.net ([127.0.0.1]) by localhost (psrvmta12.zcs-production.pri [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id cVJ6JxCFkMuH; Tue, 12 Jun 2018 22:02:03 +0200 (CEST) Received: from mail.siol.net (localhost [127.0.0.1]) by mail.siol.net (Zimbra) with ESMTPS id 11A7A5221F0; Tue, 12 Jun 2018 22:02:03 +0200 (CEST) Received: from localhost.localdomain (unknown [194.152.15.144]) (Authenticated sender: 031275009) by mail.siol.net (Zimbra) with ESMTPSA id 8B787522174; Tue, 12 Jun 2018 22:02:00 +0200 (CEST) From: Jernej Skrabec To: maxime.ripard@bootlin.com, wens@csie.org, robh+dt@kernel.org Cc: airlied@linux.ie, gustavo@padovan.org, maarten.lankhorst@linux.intel.com, seanpaul@chromium.org, mark.rutland@arm.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org, linux-sunxi@googlegroups.com Subject: [PATCH v2 06/27] drm/sun4i: Fix releasing node when enumerating enpoints Date: Tue, 12 Jun 2018 22:00:15 +0200 Message-Id: <20180612200036.21483-7-jernej.skrabec@siol.net> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180612200036.21483-1-jernej.skrabec@siol.net> References: <20180612200036.21483-1-jernej.skrabec@siol.net> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org sun4i_drv_add_endpoints() has a memory leak since it uses of_node_put() when remote is equal to NULL and does nothing when remote has a valid pointer. Invert the logic to fix memory leak. Signed-off-by: Jernej Skrabec --- drivers/gpu/drm/sun4i/sun4i_drv.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c index 50d19605c38f..e15fa2389e3f 100644 --- a/drivers/gpu/drm/sun4i/sun4i_drv.c +++ b/drivers/gpu/drm/sun4i/sun4i_drv.c @@ -283,7 +283,6 @@ static int sun4i_drv_add_endpoints(struct device *dev, remote = of_graph_get_remote_port_parent(ep); if (!remote) { DRM_DEBUG_DRIVER("Error retrieving the output node\n"); - of_node_put(remote); continue; } @@ -297,11 +296,13 @@ static int sun4i_drv_add_endpoints(struct device *dev, if (of_graph_parse_endpoint(ep, &endpoint)) { DRM_DEBUG_DRIVER("Couldn't parse endpoint\n"); + of_node_put(remote); continue; } if (!endpoint.id) { DRM_DEBUG_DRIVER("Endpoint is our panel... skipping\n"); + of_node_put(remote); continue; } } -- 2.17.1