]>
Commit | Line | Data |
---|---|---|
cd033818 SL |
1 | From f93beb4279d3c08c704fbeddde1ec39ecaa7bc08 Mon Sep 17 00:00:00 2001 |
2 | From: Kangjie Lu <kjlu@umn.edu> | |
3 | Date: Mon, 1 Apr 2019 17:46:58 +0200 | |
4 | Subject: video: imsttfb: fix potential NULL pointer dereferences | |
5 | ||
6 | [ Upstream commit 1d84353d205a953e2381044953b7fa31c8c9702d ] | |
7 | ||
8 | In case ioremap fails, the fix releases resources and returns | |
9 | -ENOMEM to avoid NULL pointer dereferences. | |
10 | ||
11 | Signed-off-by: Kangjie Lu <kjlu@umn.edu> | |
12 | Cc: Aditya Pakki <pakki001@umn.edu> | |
13 | Cc: Finn Thain <fthain@telegraphics.com.au> | |
14 | Cc: Rob Herring <robh@kernel.org> | |
15 | Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> | |
16 | [b.zolnierkie: minor patch summary fixup] | |
17 | Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | |
18 | Signed-off-by: Sasha Levin <sashal@kernel.org> | |
19 | --- | |
20 | drivers/video/fbdev/imsttfb.c | 5 +++++ | |
21 | 1 file changed, 5 insertions(+) | |
22 | ||
23 | diff --git a/drivers/video/fbdev/imsttfb.c b/drivers/video/fbdev/imsttfb.c | |
24 | index 9b167f7ef6c6..4994a540f680 100644 | |
25 | --- a/drivers/video/fbdev/imsttfb.c | |
26 | +++ b/drivers/video/fbdev/imsttfb.c | |
27 | @@ -1517,6 +1517,11 @@ static int imsttfb_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |
28 | info->fix.smem_start = addr; | |
29 | info->screen_base = (__u8 *)ioremap(addr, par->ramdac == IBM ? | |
30 | 0x400000 : 0x800000); | |
31 | + if (!info->screen_base) { | |
32 | + release_mem_region(addr, size); | |
33 | + framebuffer_release(info); | |
34 | + return -ENOMEM; | |
35 | + } | |
36 | info->fix.mmio_start = addr + 0x800000; | |
37 | par->dc_regs = ioremap(addr + 0x800000, 0x1000); | |
38 | par->cmap_regs_phys = addr + 0x840000; | |
39 | -- | |
40 | 2.20.1 | |
41 |