Re: [PATCH] x86, olpc: Avoid leak OF node on error

From: Hans de Goede
Date: Mon May 23 2022 - 07:53:27 EST


Hi,

On 5/23/22 13:12, cgel.zte@xxxxxxxxx wrote:
> From: Minghao Chi <chi.minghao@xxxxxxxxxx>
>
> The OF node should be put before returning error in xo1_rtc_init(),
> otherwise node's refcount will be leaked.
>
> Reported-by: Zeal Robot <zealci@xxxxxxxxxx>
> Signed-off-by: Minghao Chi <chi.minghao@xxxxxxxxxx>
> ---
> arch/x86/platform/olpc/olpc-xo1-rtc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/platform/olpc/olpc-xo1-rtc.c b/arch/x86/platform/olpc/olpc-xo1-rtc.c
> index 57f210cda761..dc5ac56cd9dd 100644
> --- a/arch/x86/platform/olpc/olpc-xo1-rtc.c
> +++ b/arch/x86/platform/olpc/olpc-xo1-rtc.c
> @@ -59,9 +59,9 @@ static int __init xo1_rtc_init(void)
> struct device_node *node;
>
> node = of_find_compatible_node(NULL, NULL, "olpc,xo1-rtc");
> + of_node_put(node);
> if (!node)
> return 0;
> - of_node_put(node);
>
> pr_info("olpc-xo1-rtc: Initializing OLPC XO-1 RTC\n");
> rdmsrl(MSR_RTC_DOMA_OFFSET, rtc_info.rtc_day_alarm);

of_node_put on a NULL node is a no-op, so this patch
does not make any functional difference and it makes the
code harder to read.

nack.

Regards,

Hans