From patchwork Mon Nov 20 10:45:47 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johan Hovold X-Patchwork-Id: 10067751 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id F25296022E for ; Tue, 21 Nov 2017 08:40:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E07DF28B0E for ; Tue, 21 Nov 2017 08:40:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D423928AC5; Tue, 21 Nov 2017 08:40:01 +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=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 5F62E28AC5 for ; Tue, 21 Nov 2017 08:40:01 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C02D86E394; Tue, 21 Nov 2017 08:39:39 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf0-x241.google.com (mail-lf0-x241.google.com [IPv6:2a00:1450:4010:c07::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id E45136E169 for ; Mon, 20 Nov 2017 10:45:58 +0000 (UTC) Received: by mail-lf0-x241.google.com with SMTP id i14so9541794lfc.1 for ; Mon, 20 Nov 2017 02:45:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=piU0ROqTlOIeVhwnT3CyIp1p6V7MZVLFGXmgrXW/ook=; b=bmepYVK4WfbSNwszP+qv6jb6xm53zF8xeMg9d1aSckdZwwaU+ITIOAKjJuK3aOv30u 82oLMF5LHVX+TD8ZZm1h4/vRUXZXug8feisU4lQCZCiz9OudEn3WR9+NoCheKZ8pVZ++ yKLyBLsKczxDSNgrAroYnQclYcoigfFiCvjO7AvfMQs9ujYMP84k6y+Szi7STetdC30N 1Thg+eWo8ULuWCS9MPeUYcSpiNof1y5F5IWUXl4GLdYSVwo2eikjehaDdXnCCYxDZ9Kg tmD1NbqgU59C6KylaRNXF9XBxM8QrmpTJaIu657TnttX1qAe3TjCqQ/94G0QtPqhaTtL 5I6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=piU0ROqTlOIeVhwnT3CyIp1p6V7MZVLFGXmgrXW/ook=; b=rldDptYhwdLKJrWv8p7CD+jk12Yaywdqw34g1W8TV22SO7W4c4+TJQT+4KRcDB1zae gzcX6YH0Ni0WwWXPCcHx0Mnqebwi/eUeTF4fCnmOl+gs/83p7wxqCn+e+lLhHvnKIDR3 hvnHJ1WGlL0gXXz8LweYqDpnA7XxWt87edY4n49fyljTv6sbsAwXZ4te4WFPkwv6nQmM Ad3OXETddEpZQR6UMh8czXGS2RS8xXXshOIgbCOulUFI1iGq52+kfI16JaHdrdk/xVjD vInOkCHcZk5hRCy5TPe0JijDt3NsYgDqz68Sm6GnzKVjyvmACgPq4D2ICq8MEU/a0+wq K56w== X-Gm-Message-State: AJaThX52lDiKHA6WUhhO0SqzeNN8VXugQE+O+JcwL18zyZ01xBfbczct 73kivDiGzgV6dcNyQF1m3D8= X-Google-Smtp-Source: AGs4zMYz9iHLJXkZAdDSuVGS6pG0PbIFYyH8bAdjC5USD5YKv1BIPiZi5XgXIwJNKN7Ddc8Us615kw== X-Received: by 10.46.27.85 with SMTP id b82mr4011636ljb.163.1511174757330; Mon, 20 Nov 2017 02:45:57 -0800 (PST) Received: from xi.terra (c-c0bae655.07-184-6d6c6d4.cust.bredbandsbolaget.se. [85.230.186.192]) by smtp.gmail.com with ESMTPSA id r2sm1884421lff.8.2017.11.20.02.45.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 20 Nov 2017 02:45:55 -0800 (PST) Received: from johan by xi.terra with local (Exim 4.89) (envelope-from ) id 1eGjaK-0000hn-7V; Mon, 20 Nov 2017 11:45:52 +0100 From: Johan Hovold To: Lee Jones Subject: [PATCH v2 4/4] backlight: as3711_bl: fix device-tree node leaks Date: Mon, 20 Nov 2017 11:45:47 +0100 Message-Id: <20171120104547.2639-5-johan@kernel.org> X-Mailer: git-send-email 2.15.0 In-Reply-To: <20171120104547.2639-1-johan@kernel.org> References: <20171120104547.2639-1-johan@kernel.org> X-Mailman-Approved-At: Tue, 21 Nov 2017 08:39:20 +0000 Cc: Daniel Thompson , Bartlomiej Zolnierkiewicz , Jingoo Han , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Johan Hovold , linux-fbdev@vger.kernel.org, Guennadi Liakhovetski X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Two framebuffer device-node names were looked up during probe, but were only used as flags to indicate the presence of two framebuffer device. Drop the unused framebuffer name along with a likewise unused device pointer from the driver data, and update the platform data to pass in booleans instead of the framebuffer strings. This allows us do drop the node references acquired during probe, which would otherwise leak. Note that there are no other in-kernel users of the modified platform-data fields. Fixes: 59eb2b5e57ea ("drivers/video/backlight/as3711_bl.c: add OF support") Cc: Guennadi Liakhovetski Signed-off-by: Johan Hovold --- drivers/video/backlight/as3711_bl.c | 12 ++++++------ include/linux/mfd/as3711.h | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/video/backlight/as3711_bl.c b/drivers/video/backlight/as3711_bl.c index e55304d5cf07..ca544aa764b8 100644 --- a/drivers/video/backlight/as3711_bl.c +++ b/drivers/video/backlight/as3711_bl.c @@ -28,8 +28,6 @@ enum as3711_bl_type { struct as3711_bl_data { bool powered; - const char *fb_name; - struct device *fb_dev; enum as3711_bl_type type; int brightness; struct backlight_device *bl; @@ -273,7 +271,9 @@ static int as3711_backlight_parse_dt(struct device *dev) fb = of_parse_phandle(bl, "su1-dev", 0); if (fb) { - pdata->su1_fb = fb->full_name; + of_node_put(fb); + + pdata->su1_fb = true; ret = of_property_read_u32(bl, "su1-max-uA", &pdata->su1_max_uA); if (pdata->su1_max_uA <= 0) @@ -286,7 +286,9 @@ static int as3711_backlight_parse_dt(struct device *dev) if (fb) { int count = 0; - pdata->su2_fb = fb->full_name; + of_node_put(fb); + + pdata->su2_fb = true; ret = of_property_read_u32(bl, "su2-max-uA", &pdata->su2_max_uA); if (pdata->su2_max_uA <= 0) @@ -425,7 +427,6 @@ static int as3711_backlight_probe(struct platform_device *pdev) if (pdata->su1_fb) { su = &supply->su1; - su->fb_name = pdata->su1_fb; su->type = AS3711_BL_SU1; max_brightness = min(pdata->su1_max_uA, 31); @@ -436,7 +437,6 @@ static int as3711_backlight_probe(struct platform_device *pdev) if (pdata->su2_fb) { su = &supply->su2; - su->fb_name = pdata->su2_fb; su->type = AS3711_BL_SU2; switch (pdata->su2_fbprot) { diff --git a/include/linux/mfd/as3711.h b/include/linux/mfd/as3711.h index 34cc85864be5..ddd0b953323b 100644 --- a/include/linux/mfd/as3711.h +++ b/include/linux/mfd/as3711.h @@ -108,9 +108,9 @@ struct as3711_regulator_pdata { }; struct as3711_bl_pdata { - const char *su1_fb; + bool su1_fb; int su1_max_uA; - const char *su2_fb; + bool su2_fb; int su2_max_uA; enum as3711_su2_feedback su2_feedback; enum as3711_su2_fbprot su2_fbprot;