Show a cover letter.

GET /api/covers/54224/?format=api
Content-Type: application/json
Vary: Accept

    "id": 54224,
    "url": "",
    "web_url": "",
    "project": {
        "id": 1,
        "url": "",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "",
        "list_email": "",
        "web_url": "",
        "scm_url": "git://",
        "webscm_url": ""
    "msgid": "<>",
    "date": "2019-06-03T17:32:00",
    "name": "[00/39] adding eventmode helper library",
    "submitter": {
        "id": 1205,
        "url": "",
        "name": "Anoob Joseph",
        "email": ""
    "mbox": "",
    "series": [
            "id": 4868,
            "url": "",
            "web_url": "",
            "date": "2019-06-03T17:32:00",
            "name": "adding eventmode helper library",
            "version": 1,
            "mbox": ""
    "comments": "",
    "headers": {
        "X-Mailer": "git-send-email 2.7.4",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:, ,\n\tdefinitions=2019-06-03_13:, , signatures=0",
        "List-Id": "DPDK patches and discussions <>",
        "From": "Anoob Joseph <>",
        "List-Help": "<>",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;;\n\th=from : to : cc :\n\tsubject : date : message-id : mime-version :\n\tcontent-transfer-encoding : content-type; s=pfpt0818;\n\tbh=XspkJjZ+uaDNOPeABaq5wXAtPS9WdDWnSLqpiqkPzcU=; \n\tb=kolAgT5WECrXb4eK5Gg8eLzvkixHk5lbimgNy7h/WcEov6dIR2t3RU0gp8OUe5OPsoGZ\n\tDIY8eNowsUyqjA+SW0z5L1U+TsSyjE7p0MwM5bhZSj6XTgRTwO3FxA5w4KoTQf4xO71V\n\tK2C3Ou3glKNYzrmun33rws7TA+2lO9VcGtaPBh1yf5n39pW1ao/nKFkIdo975qkZoZLN\n\tF/cvdcwxI50aCiBwBCgDVGVSNCi+YqhnOdeXgARcHcKhwsz8SKpOtBe8JJw4YXi0TFa1\n\tx7akobnObWhS76LFgQMTvPDMyR3/hMIAJZXtXYruVquXfKnstJArPheeQSQD7zLi2So/\n\tOw== ",
        "X-Mailman-Version": "2.1.15",
        "Delivered-To": "",
        "List-Archive": "<>",
        "CC": "Anoob Joseph <>, Narayana Prasad <>,\n\t<>, Lukasz Bartosik <>, Pavan Nikhilesh\n\t<>, Hemant Agrawal <>,\n\t\"Nipun  Gupta\" <>, Harry van Haaren\n\t<>, =?utf-8?q?Mattias_R=C3=B6nnblom?=\n\t<>,  Liang Ma <>",
        "To": "Jerin Jacob <>, Nikhil Rao <>,\n\t\"Erik Gabriel Carrillo\" <>, Abhinandan Gujjar\n\t<>,\n\tBruce Richardson <>,\n\tPablo de Lara <>",
        "Errors-To": "",
        "List-Subscribe": "<>,\n\t<>",
        "Sender": "\"dev\" <>",
        "Return-Path": "<>",
        "X-BeenThere": "",
        "List-Post": "<>",
        "Received": [
            "from [] (localhost [])\n\tby (Postfix) with ESMTP id 19E031B958;\n\tMon,  3 Jun 2019 19:33:22 +0200 (CEST)",
            "from (\n\t[]) by (Postfix) with ESMTP id 67C781B953\n\tfor <>; Mon,  3 Jun 2019 19:33:20 +0200 (CEST)",
            "from pps.filterd ( [])\n\tby ( with SMTP id\n\tx53HKoT0027681; Mon, 3 Jun 2019 10:33:19 -0700",
            "from ([])\n\tby with ESMTP id 2sw79pr6kp-2\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); \n\tMon, 03 Jun 2019 10:33:16 -0700",
            "from ( by\n\t( with Microsoft SMTP Server (TLS) id 15.0.1367.3;\n\tMon, 3 Jun 2019 10:32:59 -0700",
            "from ( by\n\t( with Microsoft SMTP Server id 15.0.1367.3 via Frontend\n\tTransport; Mon, 3 Jun 2019 10:32:59 -0700",
            "from (unknown [])\n\tby (Postfix) with ESMTP id 4C4093F703F;\n\tMon,  3 Jun 2019 10:32:55 -0700 (PDT)"
        "Date": "Mon, 3 Jun 2019 23:02:00 +0530",
        "Content-Type": "text/plain",
        "Subject": "[dpdk-dev] [PATCH 00/39] adding eventmode helper library",
        "MIME-Version": "1.0",
        "Message-ID": "<>",
        "Precedence": "list",
        "Content-Transfer-Encoding": "8bit",
        "List-Unsubscribe": "<>,\n\t<>",
        "X-Original-To": ""
    "content": "This series adds support for eventmode helper library and l2fwd-event\napplication.\n\nFirst 13 patches creates a new l2fwd application (l2fwd-event). Minor\ncode reorganization is done to faciliate seamless integration of\neventmode.\n\nNext 22 patches adds eventmode helper library. This library abstracts\nthe configuration of event device & Rx-Tx event adapters. The library\ncan be extended to allow users to control all the configuration\nexposed by adapters and eth device.\n\nLast 4 patches implements eventmode in l2fwd-event application. With\nevent device and adapters, fine tuned threads (based on dev\ncapabilities) can be drafted to maximize performance. Eventmode\nlibrary facilitates this and l2fwd-event demonstrates this usage.\n\nWith the introduction of eventmode helper library, any poll mode\napplication can be converted to an eventmode application with simple\nsteps, enabling multi-core scaling and dynamic load balancing to\nvarious example applications.\n\nUsage:\n     ./l2fwd-event -- <EAL args> -- <l2fwd args> -- --transfer-mode 1\n\nThe above command would invoke eventmode and with the default conf\nloaded, traffic on one port would be delivered to all enabled cores.\n\nPlanned features,\n1. Eventmode helper library doesn't intialize ethdev. Since all\n   applications already do this, eventmode helper would start\n   from reconfiguring.\n2. All features of eventdev and adapters can be exposed to the user\n   using common CL arguments. The framework for achieving the same\n   is already in place. It has to be extended to support more\n   features.\n3. Documentation is pending.\n\nCreated new app based on discussions,\n\n\n\nTested with nicvf eth PMD and event_octeontx event PMD on Marvell's\nCN83XX platform.\n\nAnoob Joseph (39):\n  examples/l2fwd-event: create copy of l2fwd\n  examples/l2fwd-event: move macros to common header\n  examples/l2fwd-event: move structures to common header\n  examples/l2fwd-event: move global vars to common header\n  examples/l2fwd-event: move dataplane code to new file\n  examples/l2fwd-event: remove unused header includes\n  examples/l2fwd-event: move drain buffers to new function\n  examples/l2fwd-event: optimize check for master core\n  examples/l2fwd-event: move periodic tasks to new func\n  examples/l2fwd-event: do timer updates only on master\n  examples/l2fwd-event: move pkt send code to a new func\n  examples/l2fwd-event: use fprintf in usage print\n  examples/l2fwd-event: improvements to the usage print\n  eventdev: add files for eventmode helper\n  eventdev: add routines for logging eventmode helper\n  eventdev: add eventmode CL options framework\n  eventdev: allow application to set ethernet portmask\n  eventdev: add framework for eventmode conf\n  eventdev: add common initialize routine for eventmode devs\n  eventdev: add eventdevice init for eventmode\n  eventdev: add eventdev port-lcore link\n  eventdev: add option to specify schedule mode for app stage\n  eventdev: add placeholder for ethdev init\n  eventdev: add Rx adapter init in eventmode\n  eventdev: add routine to validate conf\n  eventdev: add default conf for event devs field in conf\n  eventdev: add default conf for Rx adapter conf\n  eventdev: add default conf for event port-lcore link\n  eventdev: add routines to display the eventmode conf\n  eventdev: add routine to access eventmode link info\n  eventdev: add routine to access event queue for eth Tx\n  eventdev: add routine to launch eventmode workers\n  eventdev: add Tx adapter support\n  eventdev: add support for internal ports\n  eventdev: display Tx adapter conf\n  examples/l2fwd-event: add eventmode for l2fwd\n  examples/l2fwd-event: add eventmode worker\n  examples/l2fwd-event: add eventmode worker\n  examples/l2fwd-event: add eventmode worker\n\n config/common_base                                 |    1 +\n examples/Makefile                                  |    1 +\n examples/l2fwd-event/Makefile                      |   57 +\n examples/l2fwd-event/l2fwd_common.h                |   63 +\n examples/l2fwd-event/l2fwd_worker.c                | 1121 +++++++++++++\n examples/l2fwd-event/l2fwd_worker.h                |   16 +\n examples/l2fwd-event/main.c                        |  585 +++++++\n examples/l2fwd-event/                   |   14 +\n lib/librte_eal/common/eal_common_log.c             |    1 +\n lib/librte_eal/common/include/rte_log.h            |    1 +\n lib/librte_eventdev/Makefile                       |    6 +-\n lib/librte_eventdev/                    |    3 +\n lib/librte_eventdev/       |    8 +\n lib/librte_eventdev/rte_eventmode_helper.c         | 1678 ++++++++++++++++++++\n lib/librte_eventdev/rte_eventmode_helper.h         |  241 +++\n .../rte_eventmode_helper_internal.h                |  144 ++\n lib/librte_eventdev/rte_eventmode_helper_prints.c  |  223 +++\n 17 files changed, 4161 insertions(+), 2 deletions(-)\n create mode 100644 examples/l2fwd-event/Makefile\n create mode 100644 examples/l2fwd-event/l2fwd_common.h\n create mode 100644 examples/l2fwd-event/l2fwd_worker.c\n create mode 100644 examples/l2fwd-event/l2fwd_worker.h\n create mode 100644 examples/l2fwd-event/main.c\n create mode 100644 examples/l2fwd-event/\n create mode 100644 lib/librte_eventdev/rte_eventmode_helper.c\n create mode 100644 lib/librte_eventdev/rte_eventmode_helper.h\n create mode 100644 lib/librte_eventdev/rte_eventmode_helper_internal.h\n create mode 100644 lib/librte_eventdev/rte_eventmode_helper_prints.c"