From patchwork Sun Feb 7 15:07:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex X-Patchwork-Id: 378220 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2B9F6C433DB for ; Sun, 7 Feb 2021 17:45:35 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DF77264E02 for ; Sun, 7 Feb 2021 17:45:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229510AbhBGRpT (ORCPT ); Sun, 7 Feb 2021 12:45:19 -0500 Received: from m12-13.163.com ([220.181.12.13]:38218 "EHLO m12-13.163.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229506AbhBGRpS (ORCPT ); Sun, 7 Feb 2021 12:45:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id; bh=xRGMz2+Y98v+90gy3L YVUzAcWLPNy7FWsh6R8cGnp+E=; b=WTCyWP5fn7t9lJ5WOYxufV7nmpCgIWJbyF kddKV5jveaw4Hoa0Dk4+rLYrzMYAqAoP4dx4/AfvEYsHhFqFs+wzGkt4T4TdshDB cP5p2ix7nWD2KJ9DN6Pj3u5UwOH9rEqeJaJBslGWK3NaxsiniQaxWqNG4Y7GNRYi I3GCRr3T0= Received: from localhost.localdomain (unknown [223.87.231.49]) by smtp9 (Coremail) with SMTP id DcCowADXFDpRAiBgqDBEeQ--.361S2; Sun, 07 Feb 2021 23:08:03 +0800 (CST) From: alex_luca@163.com To: Geert Uytterhoeven Cc: Linus Walleij , linux-renesas-soc@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, alex_luca@163.com, Zhang Kun Subject: [PATCH] pinctrl: renesas:fix possible null pointer dereference struct pinmux_range * Date: Sun, 7 Feb 2021 23:07:36 +0800 Message-Id: <20210207150736.24382-1-alex_luca@163.com> X-Mailer: git-send-email 2.17.1 X-CM-TRANSID: DcCowADXFDpRAiBgqDBEeQ--.361S2 X-Coremail-Antispam: 1Uf129KBjvdXoWrurW8Kr47ArW7urWfCw17ZFb_yoW3twc_Ca 48ta4xAFW5C3Z3ur4xZF43Xr9FkF48ursYqrnFqF43A347Xr4YyF95urZ7G348Gw17XFWq yFWvqr4ftr17AjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IUUHmh7UUUUU== X-Originating-IP: [223.87.231.49] X-CM-SenderInfo: xdoh5spoxftqqrwthudrp/1tbiThMyylUDHqWZUAAAsB Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org From: Zhang Kun The parameters of sh_pfc_enum_in_range() pinmux_range *r should be checked first for possible null ponter, especially when PINMUX_TYPE_FUNCTION as the pinmux_type was passed by sh_pfc_config_mux(). Signed-off-by: Zhang Kun --- drivers/pinctrl/renesas/core.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/pinctrl/renesas/core.c b/drivers/pinctrl/renesas/core.c index 2cc457279345..40bbc8366668 100644 --- a/drivers/pinctrl/renesas/core.c +++ b/drivers/pinctrl/renesas/core.c @@ -128,6 +128,9 @@ int sh_pfc_get_pin_index(struct sh_pfc *pfc, unsigned int pin) static int sh_pfc_enum_in_range(u16 enum_id, const struct pinmux_range *r) { + if (!r) + return 0; + if (enum_id < r->begin) return 0;