From patchwork Tue May 11 04:42:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yuri Benditovich X-Patchwork-Id: 434744 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 140CCC433ED for ; Tue, 11 May 2021 04:43:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E57806191D for ; Tue, 11 May 2021 04:43:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230267AbhEKEof (ORCPT ); Tue, 11 May 2021 00:44:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57886 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230188AbhEKEob (ORCPT ); Tue, 11 May 2021 00:44:31 -0400 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2A658C0613ED for ; Mon, 10 May 2021 21:43:25 -0700 (PDT) Received: by mail-wm1-x335.google.com with SMTP id o26-20020a1c4d1a0000b0290146e1feccdaso501910wmh.0 for ; Mon, 10 May 2021 21:43:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=C9XpXxYtaOMpWOUjJ4wuUSOsoeZftgUi9oWw6L6+6PY=; b=i8N263f+uXxe91WLuxJx5RvGTcU+LOlIZILGfgaQzBDs6R/OaZ26o9Jduve+32BvM0 SBW5jvdKVYeAZmZN2gJYZTbusqcxDTTC15Lpii1SMDeN7urjfzM0n4B6AIEXRELudkAm ONRljjTtiItJ/VZma2gKCNrnXZ4b4XK0kHPXfxOYFa5/HwbafB07Xt0fVqX7vfPtpn9d fMPog8BUQcwL0WZCqE/LfaVSMRv8ythODRvoqifUAjufxR7YfIiFvybGHoR/pVpoGsAj zjKpR1k5AeoLdOJ3xV/+lVo6WQMDN+ca4vpe7dLYnfXjH5BFwWj+7ZyGtcbGLngURzZD Vi9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=C9XpXxYtaOMpWOUjJ4wuUSOsoeZftgUi9oWw6L6+6PY=; b=AEtWv1KrYNofJwGNY9DUxHTl5nykzp/EVjuLH7aEk7FIPHPybtAk8zzdxrU2Y16eJB FOdiqLWIQ/+cRJbaRv5JBt0ISA/jN6EmDXy0Kr4Seu6T1J33kr9MM3R7HlYv85Cpn/rg ibVwc6jFKn3fQcUGYHUzhUN26CF1c+Ii/t3B3xVyZzy9D77pARjf/cl/LTLHX78APrvG 2N9dOWyR0/OJTuAJfwujJL/YJiPF87xaOswKUXoyPjhcfCmRmy9l/AnE1jCP+C/+LDjc TlWkT5fB6sEHiYoQOoeBeCgh20+Ii989siTMyuxoeZ0INs4mZzWiofxTuw9vuQ68qDmZ A/uw== X-Gm-Message-State: AOAM530rL4/9OfuoH72SQTmGeIHelgpm5lKX4YXW6Hmd6Q2ZMV+xQ6w0 NlzYTT4URVRNN0e6RdyYVwXEfw== X-Google-Smtp-Source: ABdhPJyQk9PXGY/kEfZFu3FcsyaZ0+l7hvZVvgX/jf5mBiF4QiF5aERcUZgxITkN4JxfM3z5J6nLRg== X-Received: by 2002:a1c:4d17:: with SMTP id o23mr3023530wmh.102.1620708202793; Mon, 10 May 2021 21:43:22 -0700 (PDT) Received: from f1.Home (bzq-79-180-42-161.red.bezeqint.net. [79.180.42.161]) by smtp.gmail.com with ESMTPSA id a9sm22360520wmj.1.2021.05.10.21.43.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 May 2021 21:43:22 -0700 (PDT) From: Yuri Benditovich To: davem@davemloft.net, kuba@kernel.org, mst@redhat.com, jasowang@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org Cc: yan@daynix.com Subject: [PATCH 2/4] virtio-net: add support of UDP segmentation (USO) on the host Date: Tue, 11 May 2021 07:42:51 +0300 Message-Id: <20210511044253.469034-3-yuri.benditovich@daynix.com> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210511044253.469034-1-yuri.benditovich@daynix.com> References: <20210511044253.469034-1-yuri.benditovich@daynix.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Large UDP packet provided by the guest with GSO type set to VIRTIO_NET_HDR_GSO_UDP_L4 will be divided to several UDP packets according to the gso_size field. Signed-off-by: Yuri Benditovich --- include/linux/virtio_net.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/linux/virtio_net.h b/include/linux/virtio_net.h index b465f8f3e554..4ecf9a1ca912 100644 --- a/include/linux/virtio_net.h +++ b/include/linux/virtio_net.h @@ -51,6 +51,11 @@ static inline int virtio_net_hdr_to_skb(struct sk_buff *skb, ip_proto = IPPROTO_UDP; thlen = sizeof(struct udphdr); break; + case VIRTIO_NET_HDR_GSO_UDP_L4: + gso_type = SKB_GSO_UDP_L4; + ip_proto = IPPROTO_UDP; + thlen = sizeof(struct udphdr); + break; default: return -EINVAL; } From patchwork Tue May 11 04:42:52 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yuri Benditovich X-Patchwork-Id: 434743 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2A82AC43600 for ; Tue, 11 May 2021 04:43:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0D9C46191D for ; Tue, 11 May 2021 04:43:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230367AbhEKEop (ORCPT ); Tue, 11 May 2021 00:44:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230213AbhEKEoc (ORCPT ); Tue, 11 May 2021 00:44:32 -0400 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 69D64C06138B for ; Mon, 10 May 2021 21:43:25 -0700 (PDT) Received: by mail-wm1-x32e.google.com with SMTP id l18-20020a1ced120000b029014c1adff1edso430860wmh.4 for ; Mon, 10 May 2021 21:43:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5pOfhSU30/+74TWykEgYzzcECzknBZN+gG9Fp9jV4LM=; b=nh8fG27gkiOXB9Nd6Ql5AKT5b4yZ4SDOzi0e2MCZrznnSTBwvbi3UvjCMFYtvSaa5e T5aL7BE9xtRQRhLITeB3qJFmGhMcI2W79nl6PLA8YvU4Mhhm1zyShXvMLKwy62DHATZL deNH+G75y8mvkk3t3ZPupo6Mop+VgxQ1XhVfVkLLJ6lonX3bRpoevXYxsuFmxrfwQWNC 9V/KziU2Eu967HWhLsQJq/0+fpFxuiw3xvw7fZo5uiMybxBVxXT2SxRxDVKSGKstA2jh OhohXmo5shuPLwlqD7ikkEvUQiQjGWXdUEAqvLWNSoHSAYPK/hzkqwIiwmg4gmZFxMaq pF8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5pOfhSU30/+74TWykEgYzzcECzknBZN+gG9Fp9jV4LM=; b=UxIXwVD/Bvk40n/dIc2bETDzctyHlxxurEKkWtnwmmKdWMJClexVAKcT1G0fHhlkm0 IT0SFlKfgO32A4JJdfy1jch4QSK4+x6eTK54+Hci/nNOG1y4lP1UJsATKtvgVLEZ6VXs y7DdOnHBtbj1oifefUbZz+24jful5GAEcU3OpfMpTNuv26p0JKOkFYAufbwRmpTUeXF+ 8kireHICufkjsEElE+KR/nC09ju9rqpigrSMP7fyYezVrdBXu2tO28E1w2r/NV23v7C6 idt25NCHQnPTHy2zoLIOGreIN33HVcMjWsQRY5y9aqSP7/o70fM9kZtS60FdeB8YJdy+ nZ5w== X-Gm-Message-State: AOAM533T9yHpUGyZoKIBAcu7kV4VSgOjp7pz8ecLtxtXj1mljf97mcVM FjACtbWumo5cadUlvPUbcnzZmg== X-Google-Smtp-Source: ABdhPJxz2fUN2Ek72KoGClY3cxAT8P1LdAZMCqfO5EoKr2QEdfTvTaJ0vok4Mb2bs3QB8c0H7KV+3A== X-Received: by 2002:a1c:7dd1:: with SMTP id y200mr2960343wmc.81.1620708204150; Mon, 10 May 2021 21:43:24 -0700 (PDT) Received: from f1.Home (bzq-79-180-42-161.red.bezeqint.net. [79.180.42.161]) by smtp.gmail.com with ESMTPSA id a9sm22360520wmj.1.2021.05.10.21.43.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 May 2021 21:43:23 -0700 (PDT) From: Yuri Benditovich To: davem@davemloft.net, kuba@kernel.org, mst@redhat.com, jasowang@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org Cc: yan@daynix.com Subject: [PATCH 3/4] tun: define feature bit for USO support Date: Tue, 11 May 2021 07:42:52 +0300 Message-Id: <20210511044253.469034-4-yuri.benditovich@daynix.com> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210511044253.469034-1-yuri.benditovich@daynix.com> References: <20210511044253.469034-1-yuri.benditovich@daynix.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org User mode software can probe this bit to check whether the USO feature is supported by TUN/TAP device. Signed-off-by: Yuri Benditovich --- include/uapi/linux/if_tun.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/uapi/linux/if_tun.h b/include/uapi/linux/if_tun.h index 454ae31b93c7..24f246920dd5 100644 --- a/include/uapi/linux/if_tun.h +++ b/include/uapi/linux/if_tun.h @@ -88,6 +88,7 @@ #define TUN_F_TSO6 0x04 /* I can handle TSO for IPv6 packets */ #define TUN_F_TSO_ECN 0x08 /* I can handle TSO with ECN bits. */ #define TUN_F_UFO 0x10 /* I can handle UFO packets */ +#define TUN_F_USO 0x20 /* I can handle USO packets */ /* Protocol info prepended to the packets (when IFF_NO_PI is not set) */ #define TUN_PKT_STRIP 0x0001