Re: [PATCH] of/fdt: Remove duplicate check in early_init_dt_scan_memory()

From: Rob Herring
Date: Mon Aug 17 2020 - 14:22:53 EST


On Fri, Aug 14, 2020 at 4:57 PM Qi Zheng <arch0.zheng@xxxxxxxxx> wrote:
>
> When the value of the first reg is not NULL, there will be
> two repeated checks. So modify it.

I prefer the way it was. I'm sure the compiler is smart enough to
throw out the 2nd check. Plus, 'linux,usable-memory' being present is
the exception, so usually 'reg' will be NULL.

> Signed-off-by: Qi Zheng <arch0.zheng@xxxxxxxxx>
> ---
> drivers/of/fdt.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 4602e467ca8b..f54412c00642 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -1002,10 +1002,11 @@ int __init early_init_dt_scan_memory(unsigned long node, const char *uname,
> return 0;
>
> reg = of_get_flat_dt_prop(node, "linux,usable-memory", &l);
> - if (reg == NULL)
> + if (reg == NULL) {
> reg = of_get_flat_dt_prop(node, "reg", &l);
> - if (reg == NULL)
> - return 0;
> + if (reg == NULL)
> + return 0;
> + }
>
> endp = reg + (l / sizeof(__be32));
> hotpluggable = of_get_flat_dt_prop(node, "hotpluggable", NULL);
> --
> 2.25.1
>