diff mbox series

[2/9] net: bcmasp: Add missing of_node_get() before of_find_node_by_name()

Message ID 20250207013117.104205-3-zhangzekun11@huawei.com (mailing list archive)
State Changes Requested
Delegated to: Netdev Maintainers
Headers show
Series Add wrapper function of_find_node_by_name_balanced() | expand

Checks

Context Check Description
netdev/series_format success Posting correctly formatted
netdev/tree_selection success Guessed tree name to be net-next
netdev/ynl success Generated files up to date; no warnings/errors; no diff in generated;
netdev/fixes_present success Fixes tag not required for -next series
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/build_tools success No tools touched, skip
netdev/cc_maintainers fail 1 blamed authors not CCed: horms@kernel.org; 2 maintainers not CCed: bcm-kernel-feedback-list@broadcom.com horms@kernel.org
netdev/build_clang success Errors and warnings before: 2 this patch: 2
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/deprecated_api success None detected
netdev/check_selftest success No net selftest shell script
netdev/verify_fixes success Fixes tag looks correct
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/checkpatch warning WARNING: line length of 83 exceeds 80 columns
netdev/build_clang_rust success No Rust files in patch. Skipping build
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0
netdev/contest success net-next-2025-02-07--21-00 (tests: 890)

Commit Message

zhangzekun (A) Feb. 7, 2025, 1:31 a.m. UTC
of_find_node_by_name() will decrease the refcount of the device_node.
So, get the device_node before passing to it.

Fixes: 490cb412007d ("net: bcmasp: Add support for ASP2.0 Ethernet controller")
Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
---
 drivers/net/ethernet/broadcom/asp2/bcmasp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Krzysztof Kozlowski Feb. 12, 2025, 5:52 a.m. UTC | #1
On 07/02/2025 02:31, Zhang Zekun wrote:
> of_find_node_by_name() will decrease the refcount of the device_node.
> So, get the device_node before passing to it.
> 
> Fixes: 490cb412007d ("net: bcmasp: Add support for ASP2.0 Ethernet controller")
> Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
> ---
>  drivers/net/ethernet/broadcom/asp2/bcmasp.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/asp2/bcmasp.c b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
> index a68fab1b05f0..093c8ea72af9 100644
> --- a/drivers/net/ethernet/broadcom/asp2/bcmasp.c
> +++ b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
> @@ -1367,7 +1367,7 @@ static int bcmasp_probe(struct platform_device *pdev)
>  	bcmasp_core_init(priv);
>  	bcmasp_core_init_filters(priv);
>  
> -	ports_node = of_find_node_by_name(dev->of_node, "ethernet-ports");
> +	ports_node = of_find_node_by_name_balanced(dev->of_node, "ethernet-ports");

Why this cannot be of_get_child_by_name()?

Best regards,
Krzysztof
zhangzekun (A) Feb. 12, 2025, 6:50 a.m. UTC | #2
在 2025/2/12 13:52, Krzysztof Kozlowski 写道:
> On 07/02/2025 02:31, Zhang Zekun wrote:
>> of_find_node_by_name() will decrease the refcount of the device_node.
>> So, get the device_node before passing to it.
>>
>> Fixes: 490cb412007d ("net: bcmasp: Add support for ASP2.0 Ethernet controller")
>> Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
>> ---
>>   drivers/net/ethernet/broadcom/asp2/bcmasp.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/broadcom/asp2/bcmasp.c b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
>> index a68fab1b05f0..093c8ea72af9 100644
>> --- a/drivers/net/ethernet/broadcom/asp2/bcmasp.c
>> +++ b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
>> @@ -1367,7 +1367,7 @@ static int bcmasp_probe(struct platform_device *pdev)
>>   	bcmasp_core_init(priv);
>>   	bcmasp_core_init_filters(priv);
>>   
>> -	ports_node = of_find_node_by_name(dev->of_node, "ethernet-ports");
>> +	ports_node = of_find_node_by_name_balanced(dev->of_node, "ethernet-ports");
> 
> Why this cannot be of_get_child_by_name()?
> 
> Best regards,
> Krzysztof

Thanks for point out. After looking into 
Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml, it should be 
of_get_child_by_name().

Best regards,
Zekun
diff mbox series

Patch

diff --git a/drivers/net/ethernet/broadcom/asp2/bcmasp.c b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
index a68fab1b05f0..093c8ea72af9 100644
--- a/drivers/net/ethernet/broadcom/asp2/bcmasp.c
+++ b/drivers/net/ethernet/broadcom/asp2/bcmasp.c
@@ -1367,7 +1367,7 @@  static int bcmasp_probe(struct platform_device *pdev)
 	bcmasp_core_init(priv);
 	bcmasp_core_init_filters(priv);
 
-	ports_node = of_find_node_by_name(dev->of_node, "ethernet-ports");
+	ports_node = of_find_node_by_name_balanced(dev->of_node, "ethernet-ports");
 	if (!ports_node) {
 		dev_warn(dev, "No ports found\n");
 		return -EINVAL;