Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4960865pxj; Wed, 9 Jun 2021 06:13:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxyDeeErFsN4IKFORiC3NRuu97yImP0G9H8aX5BZpOsBLBwxZGKu+v3Ca6bX97RpkETuzr5 X-Received: by 2002:a17:906:7188:: with SMTP id h8mr28816533ejk.529.1623244435056; Wed, 09 Jun 2021 06:13:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623244435; cv=none; d=google.com; s=arc-20160816; b=IPmCag0LQnWxyeK0EGnUZbcemE+CSN2kwWssfPZLWWcCADOY2EHFucgP0zviO206e2 7wkvsjpK8tRTHznFEBJP4mChlOgR28Qn/BuKB31lwo1Aks03EvhWNDPtLfDWRcwlVfzb 5PGfKtcDIXBzSswJIGGUrMkGQoq4QQ3UeUvZH+/RAqOBTB8Olp/FxLIsNVVt3ueaBhi7 5vfdQFwm7k8+3sEWJ08g2/rt8NZ6e83W3TZnPofPUoqUm5oIyNEG0V5yIXuI7trTQ8p0 4aVlQ3+AHIN6+QVaCTM+ynn7hNazcM7uDJfDJmYFPZ1xdPVymsZSv3sPrqeLr0nC3hAr f61w== 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=ZCvBMN01TXCtuEPrUsxjPOEoOwaXa3MM//fp6Ms4ePo=; b=wkPUm1wGxi/HdLNl+XSW5TFgFPnwsj0+KoWwmWNvSL5MXvinNbPoTpi80RnKWYRz2v Pm56DdkpwVguE5CfbSBuueQtApiNIN9Y84v5fW6P+BBgkBeI4O5RLRwfHt9krndEz/uk 51efpKVWax8nLiFz/gWeUIYI81T80Eadz/7TLhOcu7ObA6OFrToO0+nyYlA+IW+Ph2UL S9cYD0mIi3fLKUDgaTgUtovo7Yx6Rl/aeYXvJp+m4cTXwPuuNNMEwf/ZbnGAqv6CyTKD 3kOuP5XbZ49k86f7oM5m5BYzIJOkBLsfwFZDG7UbvcvVtUVKLSZ798SSUWu6AjAKkmBA fwFg== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bi15si2246791ejb.299.2021.06.09.06.13.31; Wed, 09 Jun 2021 06:13:55 -0700 (PDT) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236506AbhFIGgu (ORCPT + 99 others); Wed, 9 Jun 2021 02:36:50 -0400 Received: from lizzard.sbs.de ([194.138.37.39]:39534 "EHLO lizzard.sbs.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232185AbhFIGgt (ORCPT ); Wed, 9 Jun 2021 02:36:49 -0400 Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by lizzard.sbs.de (8.15.2/8.15.2) with ESMTPS id 1596Ylxp013759 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 9 Jun 2021 08:34:47 +0200 Received: from localhost.localdomain ([139.22.32.109]) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id 1596RRxQ012013; Wed, 9 Jun 2021 08:27:27 +0200 From: Henning Schild To: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Andy Shevchenko , Mika Westerberg Cc: Linus Walleij , Henning Schild Subject: [PATCH] pinctrl: intel: fix NULL pointer deref Date: Wed, 9 Jun 2021 08:27:22 +0200 Message-Id: <20210609062722.9132-1-henning.schild@siemens.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org match could be NULL in which case we do not go ACPI after all Signed-off-by: Henning Schild --- drivers/pinctrl/intel/pinctrl-intel.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c index 85750974d182..dca17bb76cac 100644 --- a/drivers/pinctrl/intel/pinctrl-intel.c +++ b/drivers/pinctrl/intel/pinctrl-intel.c @@ -1601,12 +1601,12 @@ const struct intel_pinctrl_soc_data *intel_pinctrl_get_soc_data(struct platform_ const struct intel_pinctrl_soc_data *data = NULL; const struct intel_pinctrl_soc_data **table; struct acpi_device *adev; + const void *match; unsigned int i; adev = ACPI_COMPANION(&pdev->dev); - if (adev) { - const void *match = device_get_match_data(&pdev->dev); - + match = device_get_match_data(&pdev->dev); + if (adev && match) { table = (const struct intel_pinctrl_soc_data **)match; for (i = 0; table[i]; i++) { if (!strcmp(adev->pnp.unique_id, table[i]->uid)) { -- 2.31.1