Received: by 2002:a05:7412:251c:b0:e2:908c:2ebd with SMTP id w28csp1729981rda; Tue, 24 Oct 2023 01:08:21 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEg1kuEMeoPtkfioySW5lU1CCX8Jb1S5ZNquohf6wlPL6zB6fPAysuHZm7AODJX/GBQX5Z/ X-Received: by 2002:a05:6a20:8f0e:b0:14b:8023:33c8 with SMTP id b14-20020a056a208f0e00b0014b802333c8mr2133895pzk.2.1698134901526; Tue, 24 Oct 2023 01:08:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698134901; cv=none; d=google.com; s=arc-20160816; b=tE8ypGaTHBIrg6L5JJRQPHoZfC/ygAJjv8MvenXRhmKaTO7oc2LNe7hDRG6H3fiApg glsv4wkdHaNEPuqmAOMKsuV8Dvi1jY2xl/ZNXb68RbUgqJmYZfeOxQ1iN0//o6OGXVrQ zKluYUYRXW/EAfu3BkfuwXoZWz+G6INyHOHW8J4VkBqXsTQ/B+VUGzRkGDi+jBwmdTPO DBRTlmpLexszAMPrN+GQJkCGGkJludP6PKTvBxfFcULHZub9HKUXn66HS+mDhfuDUpWQ 0mjLb/PTSP7OZtc62FrtM5uIkdiWzWJf1lUQf5VAdId1nBKobs/4Lo4iWy2l9az5vQpI OF/A== 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 :message-id:date:subject:cc:to:from; bh=U/grQ5k1UnBon0JUgm1L34ykyEboob4RqaQM4QcuKnI=; fh=IL5L5rHdU9rYTMtPl452+R+TzjzahdOL1HjWgjXlRSc=; b=XTW6ggFxjyaXlqr70PfKKKK84gjTa/KTq+STY36kXcN4K2/ngHZ8WCgyqO/BrQtAzc Z8LF79IEtgeiSE8YnXfxFZkS31dsyX7gCVyluY3S0ZL3g6nsnhYOnVXjfzwPI9PCK7Io n1wlJdesPfWq2FJjn8ioiOAvrmAbfkIVwh5uMTX+dNJ35+JPUxOBdODXoRwnbp6lGfFF 82JnEH1KNx1fNnNpCG5eHnvP5hyG858kJJlvq902rWBKO9C7nLHdzKhKUsvmQuD+DV5J I9btWIL7XYyskJ3D61ERJABj3WgGrlSbADFm552Ii0EUtSQQywp9Osy0RJl9jcb85bgZ e03w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id j17-20020a62b611000000b00690da053918si7710486pff.4.2023.10.24.01.08.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Oct 2023 01:08:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id EE13F805C150; Tue, 24 Oct 2023 01:08:18 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232448AbjJXIIK (ORCPT + 99 others); Tue, 24 Oct 2023 04:08:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45420 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232004AbjJXIIK (ORCPT ); Tue, 24 Oct 2023 04:08:10 -0400 Received: from cstnet.cn (smtp84.cstnet.cn [159.226.251.84]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 56D80E9 for ; Tue, 24 Oct 2023 01:08:06 -0700 (PDT) Received: from localhost (unknown [124.16.138.129]) by APP-05 (Coremail) with SMTP id zQCowAA3PYVeezdlt5+TAA--.2862S2; Tue, 24 Oct 2023 16:07:58 +0800 (CST) From: Chen Ni To: thierry.reding@gmail.com, mperttunen@nvidia.com, airlied@gmail.com, daniel@ffwll.ch, jonathanh@nvidia.com Cc: dri-devel@lists.freedesktop.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, Chen Ni Subject: [PATCH] drm/tegra: dsi: Add missing check for of_find_device_by_node Date: Tue, 24 Oct 2023 08:07:38 +0000 Message-Id: <20231024080738.825553-1-nichen@iscas.ac.cn> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID: zQCowAA3PYVeezdlt5+TAA--.2862S2 X-Coremail-Antispam: 1UD129KBjvdXoW7XryfGr18Wry8Jry8XF1xAFb_yoWDGFb_Wr y8Zr98W3409r4kArsrZrya9Fy2yF9Y9FW2vFyjva4fK345J347XryjgryxurZrua1qkFyD G34UWF4rZFsxGjkaLaAFLSUrUUUUjb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUIcSsGvfJTRUUUbf8YjsxI4VWDJwAYFVCjjxCrM7AC8VAFwI0_Gr0_Xr1l1xkIjI8I 6I8E6xAIw20EY4v20xvaj40_Wr0E3s1l1IIY67AEw4v_Jr0_Jr4l8cAvFVAK0II2c7xJM2 8CjxkF64kEwVA0rcxSw2x7M28EF7xvwVC0I7IYx2IY67AKxVWDJVCq3wA2z4x0Y4vE2Ix0 cI8IcVCY1x0267AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVAFwI0_GcCE3s1l84ACjcxK6I 8E87Iv6xkF7I0E14v26rxl6s0DM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI 64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r106r15McIj6I8E87Iv67AKxVW8Jr0_Cr 1UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrwACjcxG6xCI17CEII8vrVW3 JVW8Jr1lF7I21c0EjII2zVCS5cI20VAGYxC7MxkIecxEwVAFwVW8ZwCF04k20xvY0x0EwI xGrwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480 Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_Jw0_GFylIxkGc2Ij64vIr41lIxAIcVC0I7 IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_Jr0_Gr1lIxAIcVCF04k2 6cxKx2IYs7xG6r1j6r1xMIIF0xvEx4A2jsIE14v26r1j6r4UMIIF0xvEx4A2jsIEc7CjxV AFwI0_Jr0_GrUvcSsGvfC2KfnxnUUI43ZEXa7xR_mLvJUUUUU== X-Originating-IP: [124.16.138.129] X-CM-SenderInfo: xqlfxv3q6l2u1dvotugofq/ X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Tue, 24 Oct 2023 01:08:19 -0700 (PDT) Add check for the return value of of_find_device_by_node() and return the error if it fails in order to avoid NULL pointer dereference. Fixes: e94236cde4d5 ("drm/tegra: dsi: Add ganged mode support") Signed-off-by: Chen Ni --- drivers/gpu/drm/tegra/dsi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index a9870c828374..4101b2e01211 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1543,9 +1543,11 @@ static int tegra_dsi_ganged_probe(struct tegra_dsi *dsi) np = of_parse_phandle(dsi->dev->of_node, "nvidia,ganged-mode", 0); if (np) { struct platform_device *gangster = of_find_device_by_node(np); + of_node_put(np); + if (!gangster) + return -EPROBE_DEFER; dsi->slave = platform_get_drvdata(gangster); - of_node_put(np); if (!dsi->slave) { put_device(&gangster->dev); -- 2.25.1