[1/2] batman-adv: Trigger events for auto adjusted MTU

Message ID 20230719-mtu-v1-1-48fd024f0f56@narfation.org (mailing list archive)
State Accepted, archived
Delegated to: Simon Wunderlich
Series batman-adv: Fix MTU handling |

Commit Message

Sven Eckelmann July 19, 2023, 8:15 a.m. UTC
  If an interface changes the MTU, it is expected that an NETDEV_PRECHANGEMTU
and NETDEV_CHANGEMTU notification events is triggered. This worked fine for
.ndo_change_mtu based changes because core networking code took care of it.
But for auto-adjustments after hard-interfaces changes, these events were
simply missing.

Due to this problem, non-batman-adv components weren't aware of MTU changes
and thus couldn't perform their own tasks correctly.

Fixes: 8009e9f7ac4f ("set bat0 MTU according to the MTUs of the hard interfaces")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
 net/batman-adv/hard-interface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


diff --git a/net/batman-adv/hard-interface.c b/net/batman-adv/hard-interface.c
index 41c1ad33..ae5762af 100644
--- a/net/batman-adv/hard-interface.c
+++ b/net/batman-adv/hard-interface.c
@@ -630,7 +630,7 @@  int batadv_hardif_min_mtu(struct net_device *soft_iface)
 void batadv_update_min_mtu(struct net_device *soft_iface)
-	soft_iface->mtu = batadv_hardif_min_mtu(soft_iface);
+	dev_set_mtu(soft_iface, batadv_hardif_min_mtu(soft_iface));
 	/* Check if the local translate table should be cleaned up to match a
 	 * new (and smaller) MTU.