2023-06-14 09:54:18

by Jiasheng Jiang

[permalink] [raw]
Subject: [PATCH] pstore/ram: Add check for kstrdup

Add check for the return value of kstrdup() and return the error
if it fails in order to avoid NULL pointer dereference.

Fixes: e163fdb3f7f8 ("pstore/ram: Regularize prz label allocation lifetime")
Signed-off-by: Jiasheng Jiang <[email protected]>
---
fs/pstore/ram_core.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c
index 966191d3a5ba..85aaf0fc6d7d 100644
--- a/fs/pstore/ram_core.c
+++ b/fs/pstore/ram_core.c
@@ -599,6 +599,8 @@ struct persistent_ram_zone *persistent_ram_new(phys_addr_t start, size_t size,
raw_spin_lock_init(&prz->buffer_lock);
prz->flags = flags;
prz->label = kstrdup(label, GFP_KERNEL);
+ if (!prz->label)
+ goto err;

ret = persistent_ram_buffer_map(start, size, prz, memtype);
if (ret)
--
2.25.1



2023-06-14 19:21:14

by Kees Cook

[permalink] [raw]
Subject: Re: [PATCH] pstore/ram: Add check for kstrdup

On Wed, 14 Jun 2023 17:37:33 +0800, Jiasheng Jiang wrote:
> Add check for the return value of kstrdup() and return the error
> if it fails in order to avoid NULL pointer dereference.
>
>

Applied to for-next/pstore, thanks!

[1/1] pstore/ram: Add check for kstrdup
https://git.kernel.org/kees/c/d97038d5ec20

--
Kees Cook