]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/4.9.183/pci-rcar-fix-a-potential-null-pointer-dereference.patch
4.14-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.9.183 / pci-rcar-fix-a-potential-null-pointer-dereference.patch
CommitLineData
bb104d9e
SL
1From 881cd77e24bf5682ba6a67591fb17d301316f848 Mon Sep 17 00:00:00 2001
2From: Kangjie Lu <kjlu@umn.edu>
3Date: Fri, 15 Mar 2019 02:29:43 -0500
4Subject: PCI: rcar: Fix a potential NULL pointer dereference
5
6[ Upstream commit f0d14edd2ba43b995bef4dd5da5ffe0ae19321a1 ]
7
8In case __get_free_pages() fails and returns NULL, fix the return
9value to -ENOMEM and release resources to avoid dereferencing a
10NULL pointer.
11
12Signed-off-by: Kangjie Lu <kjlu@umn.edu>
13Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
14Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
15Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
16Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
17Signed-off-by: Sasha Levin <sashal@kernel.org>
18---
19 drivers/pci/host/pcie-rcar.c | 4 ++++
20 1 file changed, 4 insertions(+)
21
22diff --git a/drivers/pci/host/pcie-rcar.c b/drivers/pci/host/pcie-rcar.c
23index d6196f7b1d58..77d931178178 100644
24--- a/drivers/pci/host/pcie-rcar.c
25+++ b/drivers/pci/host/pcie-rcar.c
26@@ -886,6 +886,10 @@ static int rcar_pcie_enable_msi(struct rcar_pcie *pcie)
27
28 /* setup MSI data target */
29 msi->pages = __get_free_pages(GFP_KERNEL, 0);
30+ if (!msi->pages) {
31+ err = -ENOMEM;
32+ goto err;
33+ }
34 base = virt_to_phys((void *)msi->pages);
35
36 rcar_pci_write_reg(pcie, base | MSIFE, PCIEMSIALR);
37--
382.20.1
39