Re: [PATCH] of/platform: increase refcount of fwnode

From: Andy Shevchenko
Date: Tue Aug 15 2023 - 02:46:09 EST


On Sat, Aug 12, 2023 at 08:24:11PM +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@xxxxxxx>
>
> commit 0f8e5651095b
> ("of/platform: Propagate firmware node by calling device_set_node()")
> use of_fwnode_handle to replace of_node_get, which introduces a side
> effect that the refcount is not increased. Then the out of tree
> jailhouse hypervisor enable/disable test will trigger kernel dump in
> of_overlay_remove, with the following sequence
> "
> of_changeset_revert(&overlay_changeset);
> of_changeset_destroy(&overlay_changeset);
> of_overlay_remove(&overlay_id);
> "
>
> So increase the refcount to avoid issues.

Right, thank you for the report!
I was too busy to send myself a fix (I realized about the issue).
But what I think about this the actual platform code has to be balanced with
this. I dunno why we have OF code do one part and the platform core do the
other. It's not obvious and prone to mistakes (like I made).

Let me look to this closer.

--
With Best Regards,
Andy Shevchenko