kasprintf() returns a pointer to dynamically allocated memory
which can be NULL upon failure. Ensure the allocation was successful
by checking the pointer validity.

Signed-off-by: Kunwu Chan <[email protected]>
---
 fs/pstore/zone.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/fs/pstore/zone.c b/fs/pstore/zone.c
index 2770746bb7aa..abca117725c8 100644
--- a/fs/pstore/zone.c
+++ b/fs/pstore/zone.c
@@ -973,6 +973,8 @@ static ssize_t psz_kmsg_read(struct pstore_zone *zone,
                char *buf = kasprintf(GFP_KERNEL, "%s: Total %d times\n",
                                      kmsg_dump_reason_str(record->reason),
                                      record->count);
+               if (!buf)
+                       return -ENOMEM;
                hlen = strlen(buf);
                record->buf = krealloc(buf, hlen + size, GFP_KERNEL);
                if (!record->buf) {
-- 
2.39.2


Reply via email to