Re: [PATCH 2/2] nvmem: layouts: onie-tlv: fix device_node reference leak in error path
From: Michael Walle
Date: Wed Aug 12 2026 - 02:24:06 EST
On Tue Aug 11, 2026 at 2:55 PM CEST, Leo Cheng wrote:
> onie_tlv_add_cells() takes a reference on the child node via
> of_get_child_by_name() for each parsed TLV and passes it to
> nvmem_add_one_cell() as cell.np. On success the created cell entry
> adopts that reference and releases it later via of_node_put(); on
> failure nvmem_add_one_cell() does not consume it, so the caller still
> owns it, but the error path only puts layout before returning, leaking
> the child node reference.
>
> Put cell.np on the error path as well. of_node_put(NULL) is a no-op, so
> this is safe even when of_get_child_by_name() returned NULL.
>
> Fixes: d3c0d12f6474 ("nvmem: layouts: onie-tlv: Add new layout driver")
> Signed-off-by: Leo Cheng <leo-cheng@xxxxxxxxxx>
Reviewed-by: Michael Walle <mwalle@xxxxxxxxxx>