kernel_samsung_a53x/net/batman-adv
Remi Pommarel d7999bfe54 batman-adv: Do not let TT changes list grows indefinitely
[ Upstream commit fff8f17c1a6fc802ca23bbd3a276abfde8cc58e6 ]

When TT changes list is too big to fit in packet due to MTU size, an
empty OGM is sent expected other node to send TT request to get the
changes. The issue is that tt.last_changeset was not built thus the
originator was responding with previous changes to those TT requests
(see batadv_send_my_tt_response). Also the changes list was never
cleaned up effectively never ending growing from this point onwards,
repeatedly sending the same TT response changes over and over, and
creating a new empty OGM every OGM interval expecting for the local
changes to be purged.

When there is more TT changes that can fit in packet, drop all changes,
send empty OGM and wait for TT request so we can respond with a full
table instead.

Fixes: e1bf0c14096f ("batman-adv: tvlv - convert tt data sent within OGMs")
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Acked-by: Antonio Quartulli <Antonio@mandelbit.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-01-02 17:00:49 +01:00
..
bat_algo.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_algo.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_iv_ogm.c batman-adv: fix random jitter calculation 2024-11-19 17:55:48 +01:00
bat_iv_ogm.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v_elp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v_elp.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v_ogm.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bat_v_ogm.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bitarray.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bitarray.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bridge_loop_avoidance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bridge_loop_avoidance.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
debugfs.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
debugfs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
distributed-arp-table.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
distributed-arp-table.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fragmentation.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fragmentation.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
gateway_client.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
gateway_client.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
gateway_common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
gateway_common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hard-interface.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hard-interface.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hash.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hash.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
icmp_socket.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
icmp_socket.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
log.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
log.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
main.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
main.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
multicast.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
multicast.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netlink.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netlink.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
network-coding.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
network-coding.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
originator.c batman-adv: Don't accept TT entries for out-of-spec VIDs 2024-11-19 14:19:34 +01:00
originator.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
routing.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
routing.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
send.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
send.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
soft-interface.c net: vlan: introduce skb_vlan_eth_hdr() 2024-11-18 12:11:48 +01:00
soft-interface.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sysfs.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sysfs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tp_meter.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tp_meter.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
trace.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
trace.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
translation-table.c batman-adv: Do not let TT changes list grows indefinitely 2025-01-02 17:00:49 +01:00
translation-table.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tvlv.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tvlv.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
types.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00