mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-11-10 20:48:12 +00:00
Merge branch 'hsr-lockless-hsr_fill_info'
Eric Dumazet says: ==================== hsr: lockless hsr_fill_info() hsr_fill_info() currently relies on RTNL being held, because hsr_port_get_hsr() walks hsr->ports with hsr_for_each_port_rtnl(). - Patch 1 annotates the data-race around hsr->sequence_nr, which is incremented from the transmit paths under hsr->seqnr_lock but read without it. - Patch 2 converts hsr_fill_info() to RCU, using a local RCU variant of hsr_port_get_hsr(). hsr->ports is already an RCU protected list: ports are added with list_add_tail_rcu(), removed with list_del_rcu() and freed with kfree_rcu(), and the data path already iterates over it with hsr_for_each_port(). This is part of a larger effort to remove the RTNL dependency from rtnl_link_ops->fill_info(). ==================== Link: https://patch.msgid.link/20260916132822.1791040-1-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
commit
8ecce29409
3 changed files with 28 additions and 11 deletions
Loading…
Add table
Add a link
Reference in a new issue