From patchwork Tue Sep 11 15:59:42 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sven Eckelmann X-Patchwork-Id: 17482 X-Patchwork-Delegate: sw@simonwunderlich.de Return-Path: X-Original-To: patchwork@open-mesh.org Delivered-To: patchwork@open-mesh.org Received: from open-mesh.org (localhost [IPv6:::1]) by open-mesh.org (Postfix) with ESMTP id F33B28144E; Tue, 11 Sep 2018 17:59:54 +0200 (CEST) Authentication-Results: open-mesh.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=narfation.org header.i=@narfation.org header.b="HUlE3AO8"; dkim-atps=neutral Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=79.140.41.39; helo=v3-1039.vlinux.de; envelope-from=sven@narfation.org; receiver= Received: from v3-1039.vlinux.de (narfation.org [79.140.41.39]) by open-mesh.org (Postfix) with ESMTPS id 6342D80372 for ; Tue, 11 Sep 2018 17:59:53 +0200 (CEST) Received: from sven-desktop.home.narfation.org (p4FCB2324.dip0.t-ipconnect.de [79.203.35.36]) by v3-1039.vlinux.de (Postfix) with ESMTPSA id 864A3110100; Tue, 11 Sep 2018 17:59:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=narfation.org; s=20121; t=1536681592; bh=G8dkT/tBLDqCACHbuKBGCQbK92848Gde6svP+ggSSIE=; h=From:To:Cc:Subject:Date:From; b=HUlE3AO8FCGYP6/8yi4KPktFHCKd+JRxQf0iSk4ceODpPabcAJUSI5FxUu2ydAYA+ hwdLRwCXn/I0nwKCrySLDWxlp1ahgeDl8m0IolN9/wdVN9dPwVMhLddh4uU4j4qmNR 3j1j5PCrwIZ6KEYufUkrLeSE6WrPkI0aidjZ9GE4= From: Sven Eckelmann To: b.a.t.m.a.n@lists.open-mesh.org Date: Tue, 11 Sep 2018 17:59:42 +0200 Message-Id: <20180911155942.15494-1-sven@narfation.org> X-Mailer: git-send-email 2.11.0 Subject: [B.A.T.M.A.N.] [PATCH] batman-adv: Enable LockLess TX for softif X-BeenThere: b.a.t.m.a.n@lists.open-mesh.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: The list for a Better Approach To Mobile Ad-hoc Networking List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The list for a Better Approach To Mobile Ad-hoc Networking Errors-To: b.a.t.m.a.n-bounces@lists.open-mesh.org Sender: "B.A.T.M.A.N" The batadv interfaces are virtual interfaces which just tunnel the traffic over other ethernet compatible interfaces. It doesn't need serialization during the tx phase and is using RCU for most of its internal datastructures. Since it doesn't have actual queues which could be locked independently, the throughput gets significantly reduced by the extra lock in the core net code. 8 parallel TCP connections forwarded by an IPQ4019 based hardware over 5GHz could reach: * without LLX: 349 Mibit/s * with LLX: 563 Mibit/s Signed-off-by: Sven Eckelmann --- net/batman-adv/soft-interface.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index 626ddca3..b1596c23 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -1062,6 +1062,7 @@ static void batadv_softif_init_early(struct net_device *dev) dev->needs_free_netdev = true; dev->priv_destructor = batadv_softif_free; dev->features |= NETIF_F_HW_VLAN_CTAG_FILTER | NETIF_F_NETNS_LOCAL; + dev->features |= NETIF_F_LLTX; dev->priv_flags |= IFF_NO_QUEUE; /* can't call min_mtu, because the needed variables