Re: [PATCH v2] Loongarch: env: fix missing NULL checks for kstrdup

From: Binbin Zhou

Date: Wed Mar 18 2026 - 22:41:23 EST


Hi Jun:

On Thu, Mar 19, 2026 at 8:53 AM Li Jun <lijun01@xxxxxxxxxx> wrote:
>
> Fixes potential kernel oops during early boot when memory
> allocation fails while parsing CPU model from device tree.
> before return -ENOMEM, of_node_put(root) first.
>
> Signed-off-by: Li Jun <lijun01@xxxxxxxxxx>
> ---
> arch/loongarch/kernel/env.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/arch/loongarch/kernel/env.c b/arch/loongarch/kernel/env.c
> index 841206fde3ab..c586de80027c 100644
> --- a/arch/loongarch/kernel/env.c
> +++ b/arch/loongarch/kernel/env.c
> @@ -49,6 +49,10 @@ static int __init init_cpu_fullname(void)
> ret = of_property_read_string(root, "model", &model);
> if (ret == 0) {
> cpuname = kstrdup(model, GFP_KERNEL);
> + if (!cpuname) {
> + of_node_put(root);

Replacing `of_find_node_by_path(“/”)` with `of_root` avoids multiple
calls to `of_node_put()`.

> + return -ENOMEM;
> + }
> loongson_sysconf.cpuname = strsep(&cpuname, " ");
> }
> of_node_put(root);
> --
> 2.25.1
>
>

--
Thanks.
Binbin