From patchwork Thu Jul 27 08:13:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sven Eckelmann X-Patchwork-Id: 18571 X-Patchwork-Delegate: sw@simonwunderlich.de Return-Path: X-Original-To: patchwork@open-mesh.org Delivered-To: patchwork@open-mesh.org Received: from diktynna.open-mesh.org (localhost [IPv6:::1]) by diktynna.open-mesh.org (Postfix) with ESMTP id 41581829DE for ; Thu, 27 Jul 2023 10:15:06 +0200 (CEST) ARC-Seal: i=2; cv=pass; a=rsa-sha256; d=open-mesh.org; s=20121; t=1690445706; b=ysgP+zgc4CPUymS73iOG3bZnibuneWzEiKg9RrTfD78UFrRKlirv9Rrt5BDmOhw2rIa8D /iCqhBJuFJ28bUNKb/1zSGedE3EcWUiT6tGIJ9xrTd/V1s1V1ZIDChb+NUzAz+aHH6Y1nr0 +oFB5FaZgent8a3y+5uaX9e+dFp+Qoc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445706; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=lgai9498h4WySyCn72bWMdikfIdbrl7UWP7CNrLqSoQ=; b=nEuvv2ekBjekor68yxtG9XAp5T0RJ8QFGMTQILxSIItn4I9qcXXip7whCMd4T8Lml9g7c 62N+MxBcC9WMquKk2IHoAQ7ZIlfRwthlYPWOlb04ME3prEe/QC4W2yPxwCFkqxrAQg9aDI0 vbiZ7JdnrwVCMl/MmYexCu4HlYD2htg= ARC-Authentication-Results: i=2; open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Authentication-Results: open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Received: from dvalin.narfation.org (dvalin.narfation.org [IPv6:2a00:17d8:100::8b1]) by diktynna.open-mesh.org (Postfix) with ESMTPS id C01D981924 for ; Thu, 27 Jul 2023 10:14:14 +0200 (CEST) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445654; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=lgai9498h4WySyCn72bWMdikfIdbrl7UWP7CNrLqSoQ=; b=oIXVozZ36n5ru9OuLlRnG0k58DFLzqgDZ7mgd+xZPQPgEj1Agi3Jsc/PQmY4AE1/PenhSG 4Lbsdz5njrskHvqtKeeNO7+CMdPgdMQHtsQMYPb3OeOD+4GtMpNOzr7ya2vOIVbkKkP86x Fc77RAUolbcD7xtL3m8Q14lPNa7kKl8= ARC-Authentication-Results: i=1; diktynna.open-mesh.org; dkim=pass header.d=narfation.org header.s=20121 header.b=MKTiMHC2; dmarc=pass (policy=none) header.from=narfation.org; spf=pass (diktynna.open-mesh.org: domain of sven@narfation.org designates 2a00:17d8:100::8b1 as permitted sender) smtp.mailfrom=sven@narfation.org ARC-Seal: i=1; s=20121; d=open-mesh.org; t=1690445654; a=rsa-sha256; cv=none; b=JVbI4fkxLxa0SPlti+Sn3bxMWRsihXxbWwWp844mKyRd/9Xifj9plh0jbgdPp1ytdjSgV1 PJqWPoDbS23wbuSClWGWJMiQx9nWyk/L0o0eMCuUCVeA05pBS/ps1bvfPZApEkGGinSh7m c7KCF8B9zLBZwW3d3NOcMuIEQC0MkU8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=narfation.org; s=20121; t=1690445654; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lgai9498h4WySyCn72bWMdikfIdbrl7UWP7CNrLqSoQ=; b=MKTiMHC2tiLRt9yyJfGXp3LxCxtvTTMjj/eRiLHqCp1OJmOgQiJW/4+NzeqV2SnDRaLzrJ Cvg8YBnbQAqFij3YWlKm3x63fDIgOjP6kl1uJsiIgVhgHVa7vRac75f3af6T/lSb1+HLme UBaCX+gKEAYfkf4u7WdSOcUpUxX44Fo= From: Sven Eckelmann Date: Thu, 27 Jul 2023 10:13:42 +0200 Subject: [PATCH RFC 1/3] batman-adv: Avoid magic value for minimum MTU MIME-Version: 1.0 Message-Id: <20230727-jumbo-mtu-v1-1-036ce1a6e33c@narfation.org> References: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> In-Reply-To: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> To: b.a.t.m.a.n@lists.open-mesh.org X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=875; i=sven@narfation.org; h=from:subject:message-id; bh=Z4L+JSYnxRehrPI0RFqwwv7dDyMe5bo1qPebP8+uwos=; b=owEBbQKS/ZANAwAKAV2HCgfBJntGAcsmYgBkwidHBCJ5/W9i1m3hVhm65GyNhIpFAm7EF5Abx LzK/Xmzqs2JAjMEAAEKAB0WIQQXXSuHYSVz3OMy4AJdhwoHwSZ7RgUCZMInRwAKCRBdhwoHwSZ7 Rnt7EACmBVGtfHmUgdOIuhCvlO5qN30SnSWLzmiuOUnc5M0CXWqUHWdSbTmM2SkMoLa7UxvOa5Y J0MasK/HDM0lUqhtqbEukTcyjIxKRk5swUq/EMDzKbF20PdL0Cvn8hZ4vcSt3DA7YVyFJhk2W8W nujcvmCe3BqQSzxXj13q5sFXAIY35tyYfnzvpqJP0Jh63/TDgMjgDjm2VYPCul+syRF56hi+e9h 3RInrl+GUME0sFTbdt5iJ1KQtJ8OtHXopwkoLUsJ+Y7+7pSqQkbvvTKGN94iWTjyiWDw7O8Y+Se d4QPuaE//xapgARFj5XHlrcXcdGy/tJijZZEGR/ChqWPOtIkIzb+PRxu/6l5naVKMi5xtMKx6w6 okOFofTAiA1u3UVqCABHmjhgxnOfVW9Jax/JXk8tz8zGtk7i5VZ+dBj+/GkD9daFTor1BvMYYFT B6q2Wi+MUp2eUmXyXI6VRzX2K8I/R8bdwkNKHKswcxJLT/rdBy76inrrpqNb7tyBRrOFhsNeLJS P3Pk4Q4dvYSW+WMCI413c4AC3JpoblUilCD4I6MIS0oQgZNSop3wWGH+zHAKk3e2PUqrFv8MIO6 Ag0/zhPFG/tl4zSQEPXOEvzSrVfI4M7JjgOWlKvSqmfQS7vy25iTMQZe9HB7zfjR9w7vAnjhJgM aAmeO6av7z9YQ2w== X-Developer-Key: i=sven@narfation.org; a=openpgp; fpr=522D7163831C73A635D12FE5EC371482956781AF Message-ID-Hash: EJF43MQAY5I7C7RU5PWH7H3GKCVGVECQ X-Message-ID-Hash: EJF43MQAY5I7C7RU5PWH7H3GKCVGVECQ X-MailFrom: sven@narfation.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-b.a.t.m.a.n.lists.open-mesh.org-0; header-match-b.a.t.m.a.n.lists.open-mesh.org-1; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.8 Precedence: list List-Id: The list for a Better Approach To Mobile Ad-hoc Networking Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: The header linux/if_ether.h already defines a constant for the minimum MTU. So simply use it instead of having a magic constant in the code. Signed-off-by: Sven Eckelmann --- net/batman-adv/soft-interface.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index d3fdf822..f7947fad 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -154,7 +154,7 @@ static int batadv_interface_set_mac_addr(struct net_device *dev, void *p) static int batadv_interface_change_mtu(struct net_device *dev, int new_mtu) { /* check ranges */ - if (new_mtu < 68 || new_mtu > batadv_hardif_min_mtu(dev)) + if (new_mtu < ETH_MIN_MTU || new_mtu > batadv_hardif_min_mtu(dev)) return -EINVAL; dev->mtu = new_mtu; From patchwork Thu Jul 27 08:13:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sven Eckelmann X-Patchwork-Id: 18572 X-Patchwork-Delegate: sw@simonwunderlich.de Return-Path: X-Original-To: patchwork@open-mesh.org Delivered-To: patchwork@open-mesh.org Received: from diktynna.open-mesh.org (localhost [IPv6:::1]) by diktynna.open-mesh.org (Postfix) with ESMTP id 2A7C28208E for ; Thu, 27 Jul 2023 10:15:46 +0200 (CEST) ARC-Seal: i=2; cv=pass; a=rsa-sha256; d=open-mesh.org; s=20121; t=1690445746; b=1q+X2wSiWlSTF5QEhTX4618+fwXTOMKv7d/5j6mccSiflPDY1tpip0DidwOl9degRavA0 epAvNdB8n5uEpadE2w0tuzysQ21GtdWhP8ZnZ0KtUaAtCthhtAjsTHjP5rHWLFhxxqBQZy/ CXNuAw4wqdWJEu6dHVH3NXnKM1t8o0M= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445746; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=GrzKoxQ36tBxvWUSvUQSn4sunBOCaUcdksxW5Gl0tbc=; b=ham92rrjSeB7EFFqJ8yvoMMcsfkdWRSy/hgPQGWruWC5vxswbiSnhSlnzduegvc3Aehb/ wEEjYH3AgH39p8SZB7c40P+LvjogbZQb4bpGZ42zZU8EGFR4lE0RxEivHTi+D8ABhB2GLGV qY8H84UbvOfKIVMCF9Wr28H0NQo5M1Q= ARC-Authentication-Results: i=2; open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Authentication-Results: open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Received: from dvalin.narfation.org (dvalin.narfation.org [IPv6:2a00:17d8:100::8b1]) by diktynna.open-mesh.org (Postfix) with ESMTPS id 83B0A81A3C for ; Thu, 27 Jul 2023 10:14:20 +0200 (CEST) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445661; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=GrzKoxQ36tBxvWUSvUQSn4sunBOCaUcdksxW5Gl0tbc=; b=R5Ffp/V5hVFsqWYI+CSTMfz3IjUTW6+n6vbamC9jxJAww+wxh2Cw2Bbdctl6IKHMCWvWgE 4OsNF/Q4SO8Y7otfZ9vizRRY/VI4kjlzY0T1r0rzDeiN85SpRDyIvSsWqmjTi+/iq2w4Tm Uy+rMRE06/00IKW3jtImbfEbTYuiZhQ= ARC-Authentication-Results: i=1; diktynna.open-mesh.org; dkim=pass header.d=narfation.org header.s=20121 header.b=GmjIngtd; dmarc=pass (policy=none) header.from=narfation.org; spf=pass (diktynna.open-mesh.org: domain of sven@narfation.org designates 2a00:17d8:100::8b1 as permitted sender) smtp.mailfrom=sven@narfation.org ARC-Seal: i=1; s=20121; d=open-mesh.org; t=1690445661; a=rsa-sha256; cv=none; b=GWG1DmmlfRNv9XFQvE5/YgJUKUdV5CUuY+JT1S6ENbPuEwocJ31GRLP3TQ4Ukj9HrGoo0E cYTAhJ7A+Psw+7dpQN+9QcDDajZGLdL8BrUbjesY6qXima/s6rbSrM34ovXcv+NM5cpZqz Y8nN/rv01W07zjObZGSzlNe4I+f/S8Q= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=narfation.org; s=20121; t=1690445660; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GrzKoxQ36tBxvWUSvUQSn4sunBOCaUcdksxW5Gl0tbc=; b=GmjIngtdPi0g/KYQhkV7cXhTRDis7QrP4Iy7lwCZlelQr/hMIq1IrmuDMEgqjihZfbmDG6 7sXqrobl8jyxc2XtX7id0siXMJQeQFFjz9CzDsbjHWA13cUnS61Ahbxgw9zy6Pa2QQTdhZ a8/KqOTXTXk54EtaxCIWB3AOAjSGvb4= From: Sven Eckelmann Date: Thu, 27 Jul 2023 10:13:43 +0200 Subject: [PATCH RFC 2/3] batman-adv: Check hardif MTU against runtime MTU MIME-Version: 1.0 Message-Id: <20230727-jumbo-mtu-v1-2-036ce1a6e33c@narfation.org> References: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> In-Reply-To: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> To: b.a.t.m.a.n@lists.open-mesh.org X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2775; i=sven@narfation.org; h=from:subject:message-id; bh=ieJrSIN/6T9uLaha42I0Ifvxuf/346ht09P7/vwCdlQ=; b=owEBbQKS/ZANAwAKAV2HCgfBJntGAcsmYgBkwidHc4BWSe4cvsuIyjaq1Vox0+diczue7wNM+ imLM/4nY1+JAjMEAAEKAB0WIQQXXSuHYSVz3OMy4AJdhwoHwSZ7RgUCZMInRwAKCRBdhwoHwSZ7 RrhsEADMJk+BaJQebGQ5UGWF5j/azVG8APELqVoPuenw9GorJ56BCxdJSs6ytWeaeb+YRKH9BDb EPfJFiN/7lQOVgdBVI5DzHXARLPXWWP5jTuniLLAA8tDhtljCu/YdtMUQBPTmGKQOs0X8ePwghL A9XtZXyRoqMVwlO3z7lG1fPKMuG7m6Lq1+uYUcKlkNDDV+IYzUGcVJKoJCTt8vhAA/FV0+j9ucl JRax8ryESLb7t/KuPZMiQjV1QiJRcX0D34YydHlU+NPcXp8f0GMQSHar0rvjr+xZ6K1ditCo7XG AGN1PA/WcIUjpeLkrI3X8gbr+0KKBZXLSWjBO3a05X8+Nbk1ViNpeMlvHKVDY4vhSzhTQV0aHOl 6/tBkGnsrBUs3AUXt0KocLvKpGJyBI3TcVifYX1LxGvidebxIxTiYxehtcXNAE+Lys/v0qQmBgh Xa3wsI/4mJTkTB0jKvDpsc42nwF433GU5hwFAVlA5w7rNnXPTu0Dce/q/AQjE8a4JInKTMEghwc ENDi8ag7gBQ2mmyZHt0F6FIW0gM9fa8h8IChNTrGdAmG0hiygBHEz7xYzAucf0IM2K7ltnRQpdS wm1fTcapl9+oP28eZEYnPwlIGxrJzdGD9hC3ZBfcDIgKkLAHETI3kZNrtD+HdHRmjXamCKZDjJX 9YiabhcYTY/+QOg== X-Developer-Key: i=sven@narfation.org; a=openpgp; fpr=522D7163831C73A635D12FE5EC371482956781AF Message-ID-Hash: POVPU3YCNJFOFENHBYX6BEXNNE3WKGKA X-Message-ID-Hash: POVPU3YCNJFOFENHBYX6BEXNNE3WKGKA X-MailFrom: sven@narfation.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-b.a.t.m.a.n.lists.open-mesh.org-0; header-match-b.a.t.m.a.n.lists.open-mesh.org-1; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.8 Precedence: list List-Id: The list for a Better Approach To Mobile Ad-hoc Networking Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: If the MTU of the soft/mesh interface was already reduced (enough), it is not necessary to print a warning about a hard interface not having a MTU to transport ethernet payloads of 1500 bytes. Signed-off-by: Sven Eckelmann --- net/batman-adv/hard-interface.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/net/batman-adv/hard-interface.c b/net/batman-adv/hard-interface.c index 41c1ad33..5a4ff9a8 100644 --- a/net/batman-adv/hard-interface.c +++ b/net/batman-adv/hard-interface.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -699,9 +700,14 @@ int batadv_hardif_enable_interface(struct batadv_hard_iface *hard_iface, struct batadv_priv *bat_priv; __be16 ethertype = htons(ETH_P_BATMAN); int max_header_len = batadv_max_header_len(); + unsigned int required_mtu; + unsigned int hardif_mtu; int ret; - if (hard_iface->net_dev->mtu < ETH_MIN_MTU + max_header_len) + hardif_mtu = READ_ONCE(hard_iface->net_dev->mtu); + required_mtu = READ_ONCE(soft_iface->mtu) + max_header_len; + + if (hardif_mtu < ETH_MIN_MTU + max_header_len) return -EINVAL; if (hard_iface->if_status != BATADV_IF_NOT_IN_USE) @@ -734,18 +740,18 @@ int batadv_hardif_enable_interface(struct batadv_hard_iface *hard_iface, hard_iface->net_dev->name); if (atomic_read(&bat_priv->fragmentation) && - hard_iface->net_dev->mtu < ETH_DATA_LEN + max_header_len) + hardif_mtu < required_mtu) batadv_info(hard_iface->soft_iface, "The MTU of interface %s is too small (%i) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to %i would solve the problem.\n", - hard_iface->net_dev->name, hard_iface->net_dev->mtu, - ETH_DATA_LEN + max_header_len); + hard_iface->net_dev->name, hardif_mtu, + required_mtu); if (!atomic_read(&bat_priv->fragmentation) && - hard_iface->net_dev->mtu < ETH_DATA_LEN + max_header_len) + hardif_mtu < required_mtu) batadv_info(hard_iface->soft_iface, "The MTU of interface %s is too small (%i) to handle the transport of batman-adv packets. If you experience problems getting traffic through try increasing the MTU to %i.\n", - hard_iface->net_dev->name, hard_iface->net_dev->mtu, - ETH_DATA_LEN + max_header_len); + hard_iface->net_dev->name, hardif_mtu, + required_mtu); if (batadv_hardif_is_iface_up(hard_iface)) batadv_hardif_activate_interface(hard_iface); From patchwork Thu Jul 27 08:13:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sven Eckelmann X-Patchwork-Id: 18573 X-Patchwork-Delegate: sw@simonwunderlich.de Return-Path: X-Original-To: patchwork@open-mesh.org Delivered-To: patchwork@open-mesh.org Received: from diktynna.open-mesh.org (localhost [IPv6:::1]) by diktynna.open-mesh.org (Postfix) with ESMTP id 13CB882ECE for ; Thu, 27 Jul 2023 10:16:26 +0200 (CEST) ARC-Seal: i=2; cv=pass; a=rsa-sha256; d=open-mesh.org; s=20121; t=1690445786; b=jlnw79yL1UMWncDnz3fV6IMjN6gEm1X6zRu6Kau2frd2a2p9QabBoQEwKU0xBpCKeAeud wgQzXj0eZXYikyOXj85P4smWD8YZPcZQHyaTPHDdipV9kGYOpPKLpABXhkNkpnMgzMYp9Eq wNC2pq1pmtjCAOj5pF+kKY1L0QWT070= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445786; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=NS7gyUKoETP+1MLS1RjejPltvPqzjb9KcusR7H9Md08=; b=Fwa9ou7wrrX0E0YQDz6/3KFP5LE0c+ShejReSDiWL9L30QDPUVwwwqNlPpGLd8N6dfIw3 u1ZkKr2mz7vImqXPLn97KMrP1qhrkPIc6MPB0+EmLWYIedCFSZh1BzMIVT8ioouGj3+52yp FuV4u/HiypC7zQr7r4B/7FDFm459NQA= ARC-Authentication-Results: i=2; open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Authentication-Results: open-mesh.org; dkim=pass header.d=narfation.org; arc=pass; dmarc=pass (Used From Domain Record) header.from=narfation.org policy.dmarc=none Received: from dvalin.narfation.org (dvalin.narfation.org [IPv6:2a00:17d8:100::8b1]) by diktynna.open-mesh.org (Postfix) with ESMTPS id DD75D81E6A for ; Thu, 27 Jul 2023 10:14:24 +0200 (CEST) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=open-mesh.org; s=20121; t=1690445666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=NS7gyUKoETP+1MLS1RjejPltvPqzjb9KcusR7H9Md08=; b=BYjWNq1vI1hdT7EDaCVYty5fLn5oyKbocdThoA5L0fNpkFzRbhxO3G9Hc2vnzlVvWzyTIW LItWQct457PabNjoSzvUGhpujwwIVFelxayi3noR9yWl3E5QhHZHV5eafdUg/k9c4KxX0i CyfyAU8bdBkVaqYsZCtyCUGGPQqwpzk= ARC-Authentication-Results: i=1; diktynna.open-mesh.org; dkim=pass header.d=narfation.org header.s=20121 header.b=E4omFk5a; dmarc=pass (policy=none) header.from=narfation.org; spf=pass (diktynna.open-mesh.org: domain of sven@narfation.org designates 2a00:17d8:100::8b1 as permitted sender) smtp.mailfrom=sven@narfation.org ARC-Seal: i=1; s=20121; d=open-mesh.org; t=1690445666; a=rsa-sha256; cv=none; b=dbSpx3YBHL9uVapQoEdnYsiQrzCleQKyNI4cRHAfE18TqqK27dQ4ATcPvjrQpbOWo3ZF6y I25yWr9ycruzu8Rugqq5W1ZOR/eLoK49erpOWjms4bDjmcCxkYiCQ0z2gGL1Mx3fMDQmgt sl0b30JNY6U6lvlox2XZ1CLNOH6y4Jc= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=narfation.org; s=20121; t=1690445664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=NS7gyUKoETP+1MLS1RjejPltvPqzjb9KcusR7H9Md08=; b=E4omFk5asuUfdzYehQnEW5YtMr2B+/eE86eRJ16Wy4MFFRVZtK1cfrjWmYCnyoOXZL19VS v1fGWvtDSom1gKL1fcu/3zXWTx2psgA11qby3RV4DHIqs9eQhyzaZvkfOcp8mlvEW05F0G qcsrHlfZn/w8+RHVi4gEHROxl/i9Y68= From: Sven Eckelmann Date: Thu, 27 Jul 2023 10:13:44 +0200 Subject: [PATCH RFC 3/3] batman-adv: Add support for jumbo frames MIME-Version: 1.0 Message-Id: <20230727-jumbo-mtu-v1-3-036ce1a6e33c@narfation.org> References: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> In-Reply-To: <20230727-jumbo-mtu-v1-0-036ce1a6e33c@narfation.org> To: b.a.t.m.a.n@lists.open-mesh.org X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2423; i=sven@narfation.org; h=from:subject:message-id; bh=MVq/l4cZCBP8srzEoasJnRvPRiFvg4I14VjEWf5N1HQ=; b=owEBbQKS/ZANAwAKAV2HCgfBJntGAcsmYgBkwidHBEqBvw+b9dSDaCmOEaTCCXeoA+DwJiy8m LOHPD+ju6eJAjMEAAEKAB0WIQQXXSuHYSVz3OMy4AJdhwoHwSZ7RgUCZMInRwAKCRBdhwoHwSZ7 RmpAEACOj+6mVjJVmxCbDj/KhUclf6K/MFJvI+MEUJhi5M0uvHbrYQMAz79AKnbPehb8jfYbn2R XahUGTDcJ4tc4ZPqQqE7Xx+1RhtgZmXBq9mHL43QkpmUfshxj7ByMmdLO3NRfMogF0RROTnNK5g YXSKXfiEQ+ZxNcdo2FdjA+KOFV65LnTt5civ9Ujvf/6k/GZDRymPQoLGNae6fWzItZZNtH5L2BG 7MybjCpBZnxKdHFuRZ1jVWVUqdgff8F7tBtmGS5/hanh6/D4QOCWsdG+EBwLP6b5uepwJu6kYsw Xs7n5ipRZUDCdOnu/lXk4gCfczy27UPSwRwoYKnqDTbOrCYwSvxHP+UUKwfabfu9d7nXDF3/tWu tsujTjUwpuuH1UDVAI5hBPJtbWuyHws22kqqvt0fipOC75WYmq7CdjrKkD7WESA1mH6MNDF7yQp KDRenKW1TNhdxmcnF6EZYs0Fhmpwl6ZxapyZSjB5DpehkEol6ReSqSd9qx2HM5P2M+nkzV7sdWs 5avJMW2n63LW6vojLfi9SWNyrObRvWL49AzhneFpunkXbOQtkuAKD5OmbGoczaCZw6eccBJ0Zns DGUBXch8nqP95YVsI4F4SOygmOJFn/GW2lKS1t1sCzoXwSBYqCGxIp+2Nt3X0HnWhuRmrgIyWwi rPBRS4nK+bvmB3A== X-Developer-Key: i=sven@narfation.org; a=openpgp; fpr=522D7163831C73A635D12FE5EC371482956781AF Message-ID-Hash: BMLC66VW6FCULO57GNZS5FP5ACJDATID X-Message-ID-Hash: BMLC66VW6FCULO57GNZS5FP5ACJDATID X-MailFrom: sven@narfation.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-b.a.t.m.a.n.lists.open-mesh.org-0; header-match-b.a.t.m.a.n.lists.open-mesh.org-1; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.8 Precedence: list List-Id: The list for a Better Approach To Mobile Ad-hoc Networking Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Since batman-adv is not actually depending on hardware capabilities, it has no limit on the MTU. Only the lower hard interfaces can limit it. In case these have an high enough MTU or fragmentation is enabled, a higher MTU than 1500 can be enabled. Signed-off-by: Sven Eckelmann --- net/batman-adv/hard-interface.c | 4 +--- net/batman-adv/main.h | 2 ++ net/batman-adv/soft-interface.c | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/net/batman-adv/hard-interface.c b/net/batman-adv/hard-interface.c index 5a4ff9a8..4fbb6339 100644 --- a/net/batman-adv/hard-interface.c +++ b/net/batman-adv/hard-interface.c @@ -618,10 +618,8 @@ int batadv_hardif_min_mtu(struct net_device *soft_iface) /* the real soft-interface MTU is computed by removing the payload * overhead from the maximum amount of bytes that was just computed. - * - * However batman-adv does not support MTUs bigger than ETH_DATA_LEN */ - return min_t(int, min_mtu - batadv_max_header_len(), ETH_DATA_LEN); + return min_t(int, min_mtu - batadv_max_header_len(), BATADV_MAX_MTU); } /** diff --git a/net/batman-adv/main.h b/net/batman-adv/main.h index e0d53273..4dc81ddb 100644 --- a/net/batman-adv/main.h +++ b/net/batman-adv/main.h @@ -22,6 +22,8 @@ #define BATADV_THROUGHPUT_MAX_VALUE 0xFFFFFFFF #define BATADV_JITTER 20 +#define BATADV_MAX_MTU (ETH_MAX_MTU - batadv_max_header_len()) + /* Time To Live of broadcast messages */ #define BATADV_TTL 50 diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index f7947fad..13d5f993 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -769,7 +769,7 @@ static int batadv_softif_init_late(struct net_device *dev) atomic_set(&bat_priv->log_level, 0); #endif atomic_set(&bat_priv->fragmentation, 1); - atomic_set(&bat_priv->packet_size_max, ETH_DATA_LEN); + atomic_set(&bat_priv->packet_size_max, BATADV_MAX_MTU); atomic_set(&bat_priv->bcast_queue_left, BATADV_BCAST_QUEUE_LEN); atomic_set(&bat_priv->batman_queue_left, BATADV_BATMAN_QUEUE_LEN); @@ -1009,6 +1009,7 @@ static void batadv_softif_init_early(struct net_device *dev) * have not been initialized yet */ dev->mtu = ETH_DATA_LEN; + dev->max_mtu = BATADV_MAX_MTU; /* generate random address */ eth_hw_addr_random(dev);