lkml.org 
[lkml]   [2021]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] net: phy: add missing of_node_put before return
Date

>> From: Wang Qing <wangqing@vivo.com>
>>
>> Fix following coccicheck warning:
>> WARNING: Function "for_each_available_child_of_node"
>> should have of_node_put() before return.
>>
>> Early exits from for_each_available_child_of_node should decrement the
>> node reference counter.
>
>Most *definitely* NAK. Coccicheck is most definitely wrong on this one,
>and we will probably need some way to tell people not to believe
>coccicheck on this.
>
>In this path, the DT node is assigned to a struct device. This _must_
>be reference counted. device_set_node() does not increment the
>reference count, nor does of_fwnode_handle(). The reference count
>here is passed from this code over to the struct device.
>
>Adding an of_node_put() will break this.
>
>This must _never_ be "fixed" no matter how much coccicheck complains,
>as fixing the warning _will_ introduce a refcounting bug.
>
>I'll send a patch adding a comment to this effect.
>
>Thanks.

Yes, you are right. Maybe we can add a judgment in this cocci on which exit as expected
or abnormally, only the latter needs to be reported.

Thanks,
Qing
>
>--
>RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
>FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
\
 
 \ /
  Last update: 2021-12-14 03:15    [W:0.765 / U:0.128 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site