Files
ack-tegra/include/linux
Jakub Kicinski 97f51bf91b net: ethtool: make dev->hwprov ops-protected
dev->hwprov tracks the active hwtstamp provider for the device.
Make it ops protected (instance lock if the netdev driver opts
into holding instance lock around callbacks, otherwise rtnl_lock).

hwprov is written and read in:
 - drivers/net/phy/phy_device.c
    phydev and ops protection don't currently mix, add a comment
 - net/ethtool/
    as of now holds both rtnl lock and ops lock, this one will
    soon only hold one lock or the other

read in:
 - net/core/dev_ioctl.c
    holds both rtnl lock and ops lock
 - net/core/timestamping.c
    RCU reader

The new netdev_ops_lock_dereference() helper does not have
"compat" in the name. The name would be quite long and I think
in this case it should be obvious that we need _a_ lock.
netdev_lock_dereference() already exists and means dev->lock
is always expected.

Reviewed-by: Eric Dumazet <edumazet@google.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Link: https://patch.msgid.link/20260605002912.3456868-4-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-06-09 10:13:04 -07:00
..
…
…
…
…
…
…
…
…
2026-04-02 15:52:49 +02:00
2026-03-18 15:11:40 +05:30
2026-05-21 13:04:42 +02:00
…
2026-03-19 23:55:27 +01:00
…
…
…
…
…
…
…
…
…
2026-05-06 19:18:45 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-03 16:53:50 -04:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-04 08:10:37 -06:00
…
…
…
…
…
…
2026-03-16 13:16:49 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-02 17:08:05 -05:00
2026-05-28 17:45:46 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-31 19:15:21 +02:00
…
2026-05-19 17:26:07 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-23 13:33:51 -04:00
…
…
2026-04-07 17:38:07 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-02-27 16:40:16 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
2026-06-05 17:46:17 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
2026-02-23 13:43:16 -08:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-05 13:53:28 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-01 10:19:41 +02:00
…
…
…
…
…
…
…
2026-04-03 16:53:50 -04:00
2026-04-03 16:53:50 -04:00
…
…
…
…
…
2026-03-18 09:59:57 +00:00
…
…
…
…
…
…
2026-04-06 11:39:54 +02:00
2026-04-05 13:53:00 -07:00
…
…
2026-03-17 15:34:47 +05:30
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-08 11:06:53 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-27 07:35:05 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-05 13:53:10 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-04-20 11:35:17 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-02-27 16:40:16 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-08 11:06:53 +01:00
…
…
…
…
…
2026-03-31 07:04:00 -06:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-05-05 16:12:07 +08:00
…
…
…
2026-03-25 20:11:29 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-13 08:22:54 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-12 15:05:34 +01:00
…
…
2026-04-13 08:39:51 -07:00
…
…
…
…
…
…
…
2026-04-06 09:06:39 +02:00
…
…
…
…
2026-03-30 16:43:24 -06:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…