Thread (22 messages) 22 messages, 5 authors, 2025-05-15

Re: [ovs-dev] [PATCH net-next v4 08/15] openvswitch: Use nested-BH locking for ovs_pcpu_storage

From: Aaron Conole <aconole@redhat.com>
Date: 2025-05-14 14:14:19
Also in: linux-rt-devel

Sebastian Andrzej Siewior [off-list ref] writes:
ovs_pcpu_storage is a per-CPU variable and relies on disabled BH for its
locking. Without per-CPU locking in local_bh_disable() on PREEMPT_RT
this data structure requires explicit locking.
The data structure can be referenced recursive and there is a recursion
counter to avoid too many recursions.

Add a local_lock_t to the data structure and use
local_lock_nested_bh() for locking. Add an owner of the struct which is
the current task and acquire the lock only if the structure is not owned
by the current task.

Cc: Aaron Conole <aconole@redhat.com>
Cc: Eelco Chaudron <echaudro@redhat.com>
Cc: Ilya Maximets <i.maximets@ovn.org>
Cc: dev@openvswitch.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
Reviewed-by: Aaron Conole <aconole@redhat.com>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help