[PATCH batadv v6 00/11] batman-adv: tp_meter: post fixes cleanups
Sven Eckelmann <[email protected]>
| Newsgroups | org.open-mesh.lists.batman |
|---|---|
| Message-ID | <[email protected]> |
After most of the problems regarding the role confusion were fixed, we should use the opportunity to split the variables completly. This can prevent some of the confusions and at the same time reduce the memory consumption significantly. Since the sender variables are separated from the rest, also clean up the congestion control code. Make sure that everything is in short blocks which ensure that the reader is aware of the locking and the results of the calculation. Which also means that the actions (sending) are extracted from the congestion control code. Signed-off-by: Sven Eckelmann <[email protected]> --- Changes in v6: - add patch to initialize dec_cwnd - add patch to fix fast recovery precondition - extract the batadv_seq_before handling for fast recovery into a separate fix - add patch to finish the tp_vars initialization before adding item to the RCU protected list - Link to v5: https://patch.msgid.link/[email protected] Changes in v5: - drop accidentally added static (in-function) reason variable - add patch to handle potential divide-by-zero in batadv_tp_update_cwnd() - Link to v4: https://patch.msgid.link/[email protected] Changes in v4: - rebase - add patch to fix unacked_list order - add patch to initialize dup_acks explicitly - extract batadv_tp_avail fix to separate patch - split congestion control variable patch in "locking" and "structure" patch - Link to v3: https://patch.msgid.link/[email protected] Changes in v3: - rebase patches - fix receiver cleanup "put" - add patch to cleanup the congestion control locking - Link to v2: https://patch.msgid.link/[email protected] Changes in v2: - fix send_result kernel-doc - rebase patch - add patch to avoid role mixup in search functions - add patch to split sender and receiver sessions - Link to v1: https://patch.msgid.link/[email protected] --- Sven Eckelmann (11): batman-adv: tp_meter: keep unacked list in ascending ordered batman-adv: tp_meter: initialize dup_acks explicitly batman-adv: tp_meter: initialize dec_cwnd explicitly batman-adv: tp_meter: avoid window underflow batman-adv: tp_meter: avoid divide-by-zero for dec_cwnd batman-adv: tp_meter: fix fast recovery precondition batman-adv: tp_meter: handle seqno wrap-around for fast recovery detection batman-adv: tp_meter: add only finished tp_vars to lists batman-adv: tp_meter: split vars into sender and receiver types batman-adv: tp_meter: use locking for all congestion control variables batman-adv: tp_meter: consolidate congestion control variables net/batman-adv/main.c | 3 +- net/batman-adv/tp_meter.c | 739 +++++++++++++++++++++++++++------------------- net/batman-adv/types.h | 145 ++++----- 3 files changed, 513 insertions(+), 374 deletions(-) --- base-commit: bba80ddd693e6d82a0b1f456511904cfefd5df24 change-id: 20260513-tp-reason-missing-f1aa51f3f374 Best regards, -- Sven Eckelmann <[email protected]>