Re: [PATCH net-next v2] net: phy: Fix suspicious rcu_dereference usage
From: "Russell King (Oracle)" <linux@armlinux.org.uk>
Date: 2025-01-20 10:31:50
Also in:
lkml
On Mon, Jan 20, 2025 at 10:37:22AM +0100, Kory Maincent wrote:
On Fri, 17 Jan 2025 19:07:20 -0800 Jakub Kicinski [off-list ref] wrote:quoted
On Fri, 17 Jan 2025 23:16:59 +0100 Kory Maincent wrote:quoted
quoted
If not protected by RTNL, what prevents two threads from calling this function at the same time, thus attempting to kfree_rcu() the same pointer twice ?I don't think this function can be called simultaneously from two threads, if this were the case we would have already seen several issues with the phydev pointer. But maybe I am wrong. The rcu_lock here is to prevent concurrent dev->hwprov pointer modification done under rtnl_lock in net/ethtool/tsconfig.c.I could also be wrong, but I don't recall being told that suspend path can't race with anything else. So I think ravb should probably take rtnl_lock or some such when its shutting itself down.. ? If I'm wrong I think we should mention this is from suspend and add Claudiu's stack trace to the commit msg.Is it ok if I send the v3 fix in net-next even if it is closed?
In general, fixes are still accepted into net-next if the pull request hasn't been sent and the code that is being fixed is only in net-next. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!