[PATCH 5/6] phy: core: Add missing of_node_put() in of_phy_provider_lookup()
Zijun Hu
zijun_hu at icloud.com
Sun Oct 20 01:18:03 PDT 2024
On 2024/10/20 15:23, Christophe JAILLET wrote:
> Le 20/10/2024 à 07:27, Zijun Hu a écrit :
>> From: Zijun Hu <quic_zijuhu at quicinc.com>
[snip]
>> ---
>> drivers/phy/phy-core.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
>> index 967878b78797..24bd619a33dd 100644
>> --- a/drivers/phy/phy-core.c
>> +++ b/drivers/phy/phy-core.c
>> @@ -143,10 +143,11 @@ static struct phy_provider
>> *of_phy_provider_lookup(struct device_node *node)
>> list_for_each_entry(phy_provider, &phy_provider_list, list) {
>> if (phy_provider->dev->of_node == node)
>> return phy_provider;
>> -
>> for_each_child_of_node(phy_provider->children, child)
>> - if (child == node)
>> + if (child == node) {
>> + of_node_put(child);
>> return phy_provider;
>> + }
>
> Hi,
>
> Maybe for_each_child_of_node_scoped() to slightly simplify things at the
> same time?
>
thank you for code review.
it does not use _scoped() since for_each_child_of_node() usage here is
very simple and only has one early exit, _scoped() normally is for
complex case.
i maybe use _scoped() in next revision if one more reviewer also prefers
it.
thank you.
>> }
>> return ERR_PTR(-EPROBE_DEFER);
>>
>
More information about the linux-phy
mailing list