[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3b33d0b0-ae9f-4afe-af2f-9596394bcc4f@linaro.org>
Date: Fri, 16 Aug 2024 14:21:54 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: "Rafael J. Wysocki" <rafael@...nel.org>
Cc: Daniel Lezcano <daniel.lezcano@...aro.org>,
Zhang Rui <rui.zhang@...el.com>, Lukasz Luba <lukasz.luba@....com>,
Amit Kucheria <amitk@...nel.org>, Thara Gopinath <thara.gopinath@...il.com>,
Thierry Reding <thierry.reding@...il.com>,
Jonathan Hunter <jonathanh@...dia.com>,
Vasily Khoruzhick <anarsoul@...il.com>, Yangtao Li <tiny.windzz@...il.com>,
Chen-Yu Tsai <wens@...e.org>, Jernej Skrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
linux-tegra@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, Chen-Yu Tsai <wenst@...omium.org>
Subject: Re: [PATCH v2 4/7] thermal: of: Simplify
thermal_of_for_each_cooling_maps() with scoped for each OF child loop
On 16/08/2024 13:30, Rafael J. Wysocki wrote:
> On Fri, Aug 16, 2024 at 9:40 AM Krzysztof Kozlowski
> <krzysztof.kozlowski@...aro.org> wrote:
>>
>> Use scoped for_each_child_of_node_scoped() when iterating over device
>> nodes to make code a bit simpler.
>>
>> Reviewed-by: Chen-Yu Tsai <wenst@...omium.org>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
>> ---
>> drivers/thermal/thermal_of.c | 8 +++-----
>> 1 file changed, 3 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/thermal/thermal_of.c b/drivers/thermal/thermal_of.c
>> index 94cc077ab3a1..ce398fde48bb 100644
>> --- a/drivers/thermal/thermal_of.c
>> +++ b/drivers/thermal/thermal_of.c
>> @@ -373,7 +373,7 @@ static int thermal_of_for_each_cooling_maps(struct thermal_zone_device *tz,
>> int (*action)(struct device_node *, int, int,
>> struct thermal_zone_device *, struct thermal_cooling_device *))
>> {
>> - struct device_node *tz_np, *cm_np, *child;
>> + struct device_node *tz_np, *cm_np;
>> int ret = 0;
>>
>> tz_np = thermal_of_zone_get_by_name(tz);
>> @@ -386,12 +386,10 @@ static int thermal_of_for_each_cooling_maps(struct thermal_zone_device *tz,
>> if (!cm_np)
>> goto out;
>>
>> - for_each_child_of_node(cm_np, child) {
>> + for_each_child_of_node_scoped(cm_np, child) {
>> ret = thermal_of_for_each_cooling_device(tz_np, child, tz, cdev, action);
>> - if (ret) {
>> - of_node_put(child);
>> + if (ret)
>> break;
>> - }
>> }
>>
>> of_node_put(cm_np);
>>
>> --
>
> This clashes with
>
> https://lore.kernel.org/linux-pm/1758256.QkHrqEjB74@rjwysocki.net/
>
> which I would prefer to go in first if you don't mind.
My other patchset which fixes bugs here, could go in before:
https://lore.kernel.org/all/20240814195823.437597-1-krzysztof.kozlowski@linaro.org/
so it will be backported. Other than that, I am fine with rebasing my
changes. There is no point in refactoring the code if it is being
removed/reshuffled :)
Best regards,
Krzysztof
Powered by blists - more mailing lists