2021-03-30 01:38:53

by Qiheng Lin

[permalink] [raw]
Subject: [PATCH -next] misc/pvpanic: fix return value check in pvpanic_pci_probe()

In case of error, the function pci_iomap() returns NULL pointer

not ERR_PTR(). The IS_ERR() test in the return value check

should be replaced with NULL test.

Reported-by: Hulk Robot <[email protected]>
Signed-off-by: Qiheng Lin <[email protected]>
---
drivers/misc/pvpanic/pvpanic-pci.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/misc/pvpanic/pvpanic-pci.c b/drivers/misc/pvpanic/pvpanic-pci.c
index f38a80a5bbc8..9ecc4e8559d5 100644
--- a/drivers/misc/pvpanic/pvpanic-pci.c
+++ b/drivers/misc/pvpanic/pvpanic-pci.c
@@ -83,8 +83,8 @@ static int pvpanic_pci_probe(struct pci_dev *pdev,
return ret;

base = pci_iomap(pdev, 0, 0);
- if (IS_ERR(base))
- return PTR_ERR(base);
+ if (!base)
+ return -ENOMEM;

pi = kmalloc(sizeof(*pi), GFP_ATOMIC);
if (!pi)


2021-03-30 09:31:29

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH -next] misc/pvpanic: fix return value check in pvpanic_pci_probe()

On Tue, Mar 30, 2021 at 09:36:59AM +0800, Qiheng Lin wrote:
> In case of error, the function pci_iomap() returns NULL pointer
> not ERR_PTR(). The IS_ERR() test in the return value check
> should be replaced with NULL test.

Error path there is broken completely, this is only one place you fix, but I
suggest to switch to devm*, pcim* APIs instead,


--
With Best Regards,
Andy Shevchenko