Re: [PATCH 2/5] arch_topology: update CPU map to use the new API

From: Jonathan Cameron
Date: Tue Jul 08 2025 - 04:22:58 EST


On Tue, 8 Jul 2025 08:29:43 +0200
Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:

> On 07/07/2025 17:04, Alireza Sanaee wrote:
> > Cleans up the cpu-map generation using the created API.
> >
> > Signed-off-by: Alireza Sanaee <alireza.sanaee@xxxxxxxxxx>
> > ---
> > drivers/base/arch_topology.c | 12 ++++++------
> > 1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
> > index 3ebe77566788..88970f13f684 100644
> > --- a/drivers/base/arch_topology.c
> > +++ b/drivers/base/arch_topology.c
> > @@ -518,23 +518,23 @@ core_initcall(free_raw_capacity);
> > */
> > static int __init get_cpu_for_node(struct device_node *node)
> > {
> > + struct device_node *cpu_node __free(device_node) = NULL;
>
>
> That's not a correct style anymore. What's more it is not really
> explained anywhere. Follow standard cleanup.h rules (constructor).

There isn't a good solution in this case as the constructor is via
a pointer passed as an argument. I'd just fall back to not using
__free here and instead doing a manual put of the node in the
paths where it is set. That might just be the final successful
return path - I've not checked closely.

>
>
> Best regards,
> Krzysztof