diff options
| author | Sven Eckelmann <sven@narfation.org> | 2026-05-12 19:37:05 +0200 |
|---|---|---|
| committer | Sven Eckelmann <sven@narfation.org> | 2026-06-03 08:02:21 +0200 |
| commit | a7eff940247168919bb670f04f3d2e8e8101c1b0 (patch) | |
| tree | c1c7940e0ed02bc5a054719dc8469f1d85bfcd05 /include/linux/debugobjects.h | |
| parent | feb4a390a540eec60a2c39f7b893f19fdf57b3a5 (diff) | |
batman-adv: tp_meter: use locking for all congestion control variables
Some variables used atomic_t for concurrent access while others relied on
cwnd_lock, leading to an inconsistent locking model. This can be simplified
by:
* keeping all congestion control decisions inside the cc_lock
* variables which can be accessed without a lock must use
READ_ONCE/WRITE_ONE
This is only possible, by extracting the congestion control logic from
batadv_tp_recv_ack() into a new helper batadv_tp_handle_ack(). Its
decisions are returned as a batadv_tp_ack_reaction enum value and then
applied by the caller. This separates the algorithm (deciding what to do)
from the mechanism (actually doing it).
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions
