37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
From 58e92c4a496b27156020a59a98c7f4a92c2b1533 Mon Sep 17 00:00:00 2001
|
|
From: Wei Yongjun <weiyongjun1@huawei.com>
|
|
Date: Fri, 18 Nov 2022 06:38:38 +0000
|
|
Subject: [PATCH] nvmem: rmem: Fix return value check in rmem_read()
|
|
|
|
In case of error, the function memremap() returns NULL pointer
|
|
not ERR_PTR(). The IS_ERR() test in the return value check
|
|
should be replaced with NULL test.
|
|
|
|
Fixes: 5a3fa75a4d9c ("nvmem: Add driver to expose reserved memory as nvmem")
|
|
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Cc: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
|
|
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
|
|
Acked-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
|
|
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
|
|
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Link: https://lore.kernel.org/r/20221118063840.6357-3-srinivas.kandagatla@linaro.org
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
---
|
|
drivers/nvmem/rmem.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
--- a/drivers/nvmem/rmem.c
|
|
+++ b/drivers/nvmem/rmem.c
|
|
@@ -37,9 +37,9 @@ static int rmem_read(void *context, unsi
|
|
* but as of Dec 2020 this isn't possible on arm64.
|
|
*/
|
|
addr = memremap(priv->mem->base, available, MEMREMAP_WB);
|
|
- if (IS_ERR(addr)) {
|
|
+ if (!addr) {
|
|
dev_err(priv->dev, "Failed to remap memory region\n");
|
|
- return PTR_ERR(addr);
|
|
+ return -ENOMEM;
|
|
}
|
|
|
|
count = memory_read_from_buffer(val, bytes, &off, addr, available);
|