[PATCH v2] m68k/kernel: array out of bound access in process_uboot_commandline

From: Hangyu Hua
Date: Mon Dec 27 2021 - 21:06:45 EST


When the size of commandp >= size, array out of bound write occurs because
len == 0.

Signed-off-by: Hangyu Hua <hbh25y@xxxxxxxxx>
---
arch/m68k/kernel/uboot.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/m68k/kernel/uboot.c b/arch/m68k/kernel/uboot.c
index 928dbd33fc4a..63eaf3c3ddcd 100644
--- a/arch/m68k/kernel/uboot.c
+++ b/arch/m68k/kernel/uboot.c
@@ -101,5 +101,6 @@ __init void process_uboot_commandline(char *commandp, int size)
}

parse_uboot_commandline(commandp, len);
- commandp[len - 1] = 0;
+ if (len > 0)
+ commandp[len - 1] = 0;
}
--
2.25.1