Show a cover letter.

GET /api/covers/42445/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 42445,
    "url": "http://patches.dpdk.org/api/covers/42445/?format=api",
    "web_url": "http://patches.dpdk.org/cover/42445/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk"
    },
    "msgid": "<1530838944-51791-1-git-send-email-jiayu.hu@intel.com>",
    "date": "2018-07-06T01:02:21",
    "name": "[v4,0/3] Support UDP/IPv4 GSO",
    "submitter": {
        "id": 539,
        "url": "http://patches.dpdk.org/api/people/539/?format=api",
        "name": "Hu, Jiayu",
        "email": "jiayu.hu@intel.com"
    },
    "mbox": "http://patches.dpdk.org/cover/42445/mbox/",
    "series": [
        {
            "id": 444,
            "url": "http://patches.dpdk.org/api/series/444/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=444",
            "date": "2018-07-06T01:02:21",
            "name": "Support UDP/IPv4 GSO",
            "version": 4,
            "mbox": "http://patches.dpdk.org/series/444/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/42445/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "References": "<1529646843-45903-1-git-send-email-jiayu.hu@intel.com>",
        "X-Mailman-Version": "2.1.15",
        "X-IronPort-AV": "E=Sophos;i=\"5.51,314,1526367600\"; d=\"scan'208\";a=\"213788563\"",
        "From": "Jiayu Hu <jiayu.hu@intel.com>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "X-ExtLoop1": "1",
        "X-BeenThere": "dev@dpdk.org",
        "Message-Id": "<1530838944-51791-1-git-send-email-jiayu.hu@intel.com>",
        "X-Original-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 38B9C1B5B9;\n\tFri,  6 Jul 2018 02:54:30 +0200 (CEST)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id AE5AC1B5B9\n\tfor <dev@dpdk.org>; Fri,  6 Jul 2018 02:54:28 +0200 (CEST)",
            "from orsmga004.jf.intel.com ([10.7.209.38])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t05 Jul 2018 17:54:27 -0700",
            "from dpdk15.sh.intel.com ([10.67.111.146])\n\tby orsmga004.jf.intel.com with ESMTP; 05 Jul 2018 17:54:26 -0700"
        ],
        "X-Mailer": "git-send-email 2.7.4",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>",
        "Subject": "[dpdk-dev] [PATCH v4 0/3] Support UDP/IPv4 GSO",
        "Precedence": "list",
        "Date": "Fri,  6 Jul 2018 09:02:21 +0800",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "X-Amp-File-Uploaded": "False",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Cc": "thomas@monjalon.net,\n\tJiayu Hu <jiayu.hu@intel.com>",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "Delivered-To": "patchwork@dpdk.org",
        "In-Reply-To": "<1529646843-45903-1-git-send-email-jiayu.hu@intel.com>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "To": "dev@dpdk.org",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "With the support of UDP Fragmentation Offload (UFO) and TCP Segmentation\nOffload (TSO) in virtio, VMs can exchange large UDP and TCP packets\nexceeding MTU between each other, which can greatly reduce per-packet\nprocessing overheads.\n\nWhen the destination of the large TCP and UDP packets is crossing\nmachines, the host application needs to call two different libraries,\nGSO and IP fragmentation, to split the large packets respectively.\nHowever,the GSO and IP fragmentation library have quite different APIs,\nwhich greatly complicates the host application implementation.\n\nTo simplify application development, we propose to support UDP/IPv4\nfragmentation in the GSO library. With supporting UDP GSO, host\napplicationss can use the unified APIs to split large UDP and TCP packets.\n\nThis patchset is to support UDP/IPv4 GSO. The first patch is to provide\nUDP GSO function, the second patch is to enable UDP/IPv4 GSO in the\ntestpmd checksum forwarding engine, and the last patch is to update the\nprogrammer guide and testpmd user guide.\n\nChange log\n==========\nv4:\n- update Acked-by and Tested-by information to commit log.\nv3:\n- replace rte_pktmbuf_mtod() with rte_pktmbuf_mtod_offset().\n- fix meson build.\n- add updates to document for better explaining how UDP GSO works.\nV2:\n- fix fragment offset calculation bug.\n- add UDP GSO description in testpmd user guide.\n- shorten the second patch name.\n\nJiayu Hu (3):\n  gso: support UDP/IPv4 fragmentation\n  app/testpmd: enable UDP GSO in csum engine\n  gso: update documents for UDP/IPv4 GSO\n\n app/test-pmd/cmdline.c                             |  5 +-\n app/test-pmd/csumonly.c                            |  2 +\n app/test-pmd/testpmd.c                             |  2 +-\n .../generic_segmentation_offload_lib.rst           | 10 +++\n doc/guides/testpmd_app_ug/testpmd_funcs.rst        |  7 ++\n lib/librte_gso/Makefile                            |  1 +\n lib/librte_gso/gso_common.h                        |  3 +\n lib/librte_gso/gso_udp4.c                          | 81 ++++++++++++++++++++++\n lib/librte_gso/gso_udp4.h                          | 42 +++++++++++\n lib/librte_gso/meson.build                         |  2 +-\n lib/librte_gso/rte_gso.c                           | 24 +++++--\n lib/librte_gso/rte_gso.h                           |  6 +-\n 12 files changed, 175 insertions(+), 10 deletions(-)\n create mode 100644 lib/librte_gso/gso_udp4.c\n create mode 100644 lib/librte_gso/gso_udp4.h"
}