Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp9401548pxu; Mon, 28 Dec 2020 15:17:27 -0800 (PST) X-Google-Smtp-Source: ABdhPJxhOB53r/GLUxXx9oghptAYpVrFx7DtkQrfBjLQ4x4ndPuJpdkl/xYNQzvRB2xs6Xnv33cE X-Received: by 2002:a17:907:435c:: with SMTP id oc20mr44306457ejb.286.1609197447714; Mon, 28 Dec 2020 15:17:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1609197447; cv=none; d=google.com; s=arc-20160816; b=I/Bs+w3RXMtd7PigVGXZ1xt2A+bTBq0AVcqTcAgjUuYMBAaf7Lj/86GvAhglMg5Tpq mKKIcId2a0Zn8K00x7EnE71oVoO0FyHyLytGrLt59/H7LWbtIbEbBJS11Od5CWGm+gue Ct5ZyiA7wimYn3VP64eD0tRXqUnuwqV0ZONMy6f6DLcjzt0t2rk63hgu12/ZNCF7xDD+ t/a1ZGCCQAurHVlCw92scJC0udLPNJjnCApF3nt/+bhnVdR424SNhOQlEA1EpXRvRgr6 2eL3nkuAydDFIIpKDh/wIiVglu7RDvEtHNPuTLSFM3tB1tEUDYRpN2lVsKlJxczGIRLg L9nw== 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=8J2OEmWtMk1KamXsGAW6HA4EWrhATg2YHqPsgXaQx3U=; b=IIiUWDq96nmrXSQAmQgwSJhMP36NG8NlpD/uMpKtiWnkWSKtx32yW27nTYBIKl7BPk 3DgA+xxpqOTThbwF8/C1ZZ9ozT5hKrGEVM3BpaiQ6CAzI4Ss+i4nr+BflfQPgqhcIOE8 P7VBNw5bLDu/XURIFbWLPbfWAKuem4oxOOektFmWHSqNfmmp5J3H9j0JD250Rs7VdSfO N7zz67p2V8G4UYsH9A3vFxf63KAynLr+Ntdb25wa/YTBDyIUSTUPregKXP3Fx8ehsLx0 Vbp3IqpMHaIpdqV3K/N1AzqTCjP3+ebMAvSSCsqEtzLlp48APNBtpVlxC/EGHODlKxXC 5rYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=H5DeMo5j; 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=pass (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 si7si19186963ejb.5.2020.12.28.15.17.05; Mon, 28 Dec 2020 15:17:27 -0800 (PST) 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=@linuxfoundation.org header.s=korg header.b=H5DeMo5j; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2441558AbgL1OSP (ORCPT + 99 others); Mon, 28 Dec 2020 09:18:15 -0500 Received: from mail.kernel.org ([198.145.29.99]:53240 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2441555AbgL1OSN (ORCPT ); Mon, 28 Dec 2020 09:18:13 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8702E206D4; Mon, 28 Dec 2020 14:17:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1609165053; bh=l1UVjRlRXRpIr+flxh9z8kPHSEj4cArfqJkZGqgGFqk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=H5DeMo5jfvXiM39pqAdVnRjef3/yVKw1QvvQ894m0HabteyXgla1F5oUW7OIUNMsy 7/4lUpkAGVoLHU58A2+dNJRFBy5gZp5eYBpvG3HpFrat5GKnaObPfbod3ZboB82ZbU GFC1Pz/g1KdAUL6SDlbAYT4N7BlT5c2JBdWvySPc= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Zhang Changzhong , Sasha Levin Subject: [PATCH 5.10 394/717] slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() Date: Mon, 28 Dec 2020 13:46:32 +0100 Message-Id: <20201228125039.876542262@linuxfoundation.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201228125020.963311703@linuxfoundation.org> References: <20201228125020.963311703@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: Zhang Changzhong [ Upstream commit 428bb001143cf5bfb65aa4ae90d4ebc95f82d007 ] platform_get_resource_byname() may fail and in this case a NULL dereference will occur. Fix it to use devm_platform_ioremap_resource_byname() instead of calling platform_get_resource_byname() and devm_ioremap(). This is detected by Coccinelle semantic patch. @@ expression pdev, res, n, t, e, e1, e2; @@ res = \(platform_get_resource\|platform_get_resource_byname\)(pdev, t, n); + if (!res) + return -EINVAL; ... when != res == NULL e = devm_ioremap(e1, res->start, e2); Fixes: ad7fcbc308b0 ("slimbus: qcom: Add Qualcomm Slimbus controller driver") Signed-off-by: Zhang Changzhong Link: https://lore.kernel.org/r/1607392473-20610-1-git-send-email-zhangchangzhong@huawei.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/slimbus/qcom-ctrl.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/slimbus/qcom-ctrl.c b/drivers/slimbus/qcom-ctrl.c index 4aad2566f52d2..f04b961b96cd4 100644 --- a/drivers/slimbus/qcom-ctrl.c +++ b/drivers/slimbus/qcom-ctrl.c @@ -472,15 +472,10 @@ static void qcom_slim_rxwq(struct work_struct *work) static void qcom_slim_prg_slew(struct platform_device *pdev, struct qcom_slim_ctrl *ctrl) { - struct resource *slew_mem; - if (!ctrl->slew_reg) { /* SLEW RATE register for this SLIMbus */ - slew_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, - "slew"); - ctrl->slew_reg = devm_ioremap(&pdev->dev, slew_mem->start, - resource_size(slew_mem)); - if (!ctrl->slew_reg) + ctrl->slew_reg = devm_platform_ioremap_resource_byname(pdev, "slew"); + if (IS_ERR(ctrl->slew_reg)) return; } -- 2.27.0