aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mwlwifi/patches/004-mwlwifi-fix-PCIe-DT-node-null-pointer-dereference.patch
blob: 9b9e49b66ab38584e79ac001f329c4d92ac862f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
From 8e809b241695252e397bf0d7fc5f36e115c38831 Mon Sep 17 00:00:00 2001
From: Robert Marko <robert.marko@sartura.hr>
Date: Fri, 5 Mar 2021 11:47:59 +0100
Subject: [PATCH] mwlwifi: fix PCIe DT node null pointer dereference

pci_bus_to_OF_node() used to get the PCI bus DT node
returns node if found or NULL if none is found.

Since the return of pci_bus_to_OF_node() is not checked in
the DT node name print it will cause a null pointer
dereference and crash the kernel.

So first check whether the node is not NULL and then print.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
 hif/pcie/pcie.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/hif/pcie/pcie.c
+++ b/hif/pcie/pcie.c
@@ -570,7 +570,8 @@ static struct device_node *pcie_get_devi
 	struct device_node *dev_node;
 
 	dev_node = pci_bus_to_OF_node(pcie_priv->pdev->bus);
-	wiphy_info(priv->hw->wiphy, "device node: %s\n", dev_node->full_name);
+	if (dev_node)
+		wiphy_info(priv->hw->wiphy, "device node: %s\n", dev_node->full_name);
 
 	return dev_node;
 }