Re: [PATCH 2/2 v3] drivers: use __free attribute instead of of_node_put()

From: Sudeep Holla
Date: Tue May 07 2024 - 06:32:27 EST


On Mon, May 06, 2024 at 05:30:49PM +0200, Vincenzo Mezzela wrote:
>
> On 01/05/24 15:06, Greg KH wrote:
> > On Wed, May 01, 2024 at 02:33:39PM +0200, Vincenzo Mezzela wrote:
> > > On 01/05/24 12:48, Greg KH wrote:
> > > > On Wed, May 01, 2024 at 11:43:13AM +0200, Vincenzo Mezzela wrote:
> > > > > Introduce the __free attribute for scope-based resource management.
> > > > > Resources allocated with __free are automatically released at the end of
> > > > > the scope. This enhancement aims to mitigate memory management issues
> > > > > associated with forgetting to release resources by utilizing __free
> > > > > instead of of_node_put().
> > > > >
> > > > > The declaration of the device_node used within the do-while loops is
> > > > > moved directly within the loop so that the resource is automatically
> > > > > freed at the end of each iteration.
> > > > >
> > > > > Suggested-by: Julia Lawall <julia.lawall@xxxxxxxx>
> > > > > Signed-off-by: Vincenzo Mezzela <vincenzo.mezzela@xxxxxxxxx>
> > > > > ---
> > > > > drivers/base/arch_topology.c | 51 +++++++++++++++---------------------
> > > > > 1 file changed, 21 insertions(+), 30 deletions(-)
> > > > How was all of this tested?
> > > >
> > > > thanks,
> > > >
> > > > greg k-h
> > > Hi,
> > >
> > > I just cross-compiled it for RISC-V to enable the config
> > > GENERIC_ARCH_TOPOLOGY
> > > and include arch_topology.c as well.
> > Cross-compile is nice, how about running it?
> >
> > > Do you have any suggestion to trigger the affected code and perform some
> > > testing?
> > That is up to you to determine if you wish to modify it :)
> >
> > thanks,
> >
> > greg k-h
> Hi,
>
> I've successfully run it on QEMU. There are no differences in the dmesg
> after applying the patches.
>

For this patch, dmesg delta may not be of any use.

> Furthermore, I've tracked the execution of the parse_dt_topology() which is
> calling all the functions that I've modified with the patches and I checked
> that of_node_put was correctly called at the end of each scope.
>

That should be good enough.

> Is there anything else that can be done to further testing this changes?
>

I don't think there is much we can test other than what you have done already.
If you fix the subject and any other comments me and others had suggested, I
am happy to Ack.

--
Regards,
Sudeep