Show a cover letter.

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

{
    "id": 62548,
    "url": "http://patches.dpdk.org/api/covers/62548/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/cover/1573053090-179521-1-git-send-email-suanmingm@mellanox.com/",
    "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",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1573053090-179521-1-git-send-email-suanmingm@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1573053090-179521-1-git-send-email-suanmingm@mellanox.com",
    "date": "2019-11-06T15:11:09",
    "name": "[00/19] net/mlx5: support meter",
    "submitter": {
        "id": 1358,
        "url": "http://patches.dpdk.org/api/people/1358/?format=api",
        "name": "Suanming Mou",
        "email": "suanmingm@mellanox.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/cover/1573053090-179521-1-git-send-email-suanmingm@mellanox.com/mbox/",
    "series": [
        {
            "id": 7297,
            "url": "http://patches.dpdk.org/api/series/7297/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=7297",
            "date": "2019-11-06T15:11:09",
            "name": "net/mlx5: support meter",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/7297/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/62548/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 9825AA04AB;\n\tWed,  6 Nov 2019 16:11:49 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 0BF1F1C0B4;\n\tWed,  6 Nov 2019 16:11:49 +0100 (CET)",
            "from git-send-mailer.rdmz.labs.mlnx (unknown [37.142.13.130])\n by dpdk.org (Postfix) with ESMTP id F3A7A1C0B2\n for <dev@dpdk.org>; Wed,  6 Nov 2019 16:11:47 +0100 (CET)"
        ],
        "From": "Suanming Mou <suanmingm@mellanox.com>",
        "To": "",
        "Cc": "dev@dpdk.org",
        "Date": "Wed,  6 Nov 2019 17:11:09 +0200",
        "Message-Id": "<1573053090-179521-1-git-send-email-suanmingm@mellanox.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "Subject": "[dpdk-dev] [PATCH 00/19] net/mlx5: support meter",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "The patches introduce the meter action support for mlx5.\nThe design of the implementation was introduced in RFC as below:\nhttp://inbox.dpdk.org/dev/b994cd03-02f6-cd50-120f-dcf0941e4485@mellanox.com\n\nThe implementation is followed RFC to split flow with meter to three\nsub flows.\nPrefix flow -> Meter flow -> Suffix flow\n\nThe srTCM color blind mode is supported only, color aware mode and\nmultiple meter chaining are not supported.\n\nThe patch set add the operations to get the capabilities of the meter\naction, create/destroy the action, validate the action, attach/detach\nthe action, update the action, query the action statistics and flush\nthe actions resources.\n\nBesides these, as the flow with meter action is split to three sub\nflows for coloring(in prefix flow), color checking(in meter flow),\nleft actions applying (in suffix flow), two registers are used for the\ncolor match and prefix-suffix flow match. That's what the \"allocate\nflow meter registers\" patch does.\n\nAs with the three sub flows, two more flow tables are created for the\nmeter flow and suffix flow in patch \"prepare meter flow tables\". As\nwrote in the RFC, meter flow and suffix flow are separated since meter\nmaybe shared with multiple flows.\n\nFor the meter action statistics's query, the DevX flow counter is\nexposed to meter action in patch \"expose flow counters management\".\n\nIn the \"split meter flow\" patch, flow with meter is split to three\nsub flow. The *_DECAP and meter action will be in the prefix flow.\nAnd an extra tag action with unique flow id to match with the suffix\nflow is also added to the prefix flow. The suffix flow will apply\nall the left actions while the flow id in tag item matches.\n\nSince the metadata copy mark action is in the meter suffix flow,\nthe REG_C for cpoy mark and prefix-suffix flow match is shared.\nOnce the meter suffix flow add the tag, metadata suffix sub flow\nwon't add the tag anymore but share the tag is enough. It's done\nin the \"share tag between meter and metadata\" patch.\n\nThe meter patch set should be applied after the extensive metadata\nfeature:\nhttps://patches.dpdk.org/project/dpdk/list/?series=7242\n\n\nSuanming Mou (19):\n  net/mlx5: add meter operation callback\n  net/mlx5: fill meter capabilities using DevX\n  net/mlx5: allocate flow meter registers\n  net/mlx5: support meter profile operations\n  net/mlx5: validate meter profile\n  net/mlx5: prepare meter flow tables\n  net/mlx5: add policer rules operations\n  net/mlx5: support basic meter operations\n  net/mlx5: add meter action creation to the glue\n  net/mlx5: support meter modification operations\n  net/mlx5: support meter profile update\n  net/mlx5: expose flow counters management\n  net/mlx5: add count action to meter\n  net/mlx5: add meter statistics read and update\n  net/mlx5: add meter attach and detach\n  net/mlx5: support meter flow action\n  net/mlx5: split meter flow\n  net/mlx5: share tag between meter and metadata\n  net/mlx5: clean meter resources\n\n drivers/net/mlx5/Makefile          |    7 +\n drivers/net/mlx5/meson.build       |    3 +\n drivers/net/mlx5/mlx5.c            |   29 +\n drivers/net/mlx5/mlx5.h            |   46 ++\n drivers/net/mlx5/mlx5_devx_cmds.c  |   23 +\n drivers/net/mlx5/mlx5_flow.c       |  617 +++++++++++++++--\n drivers/net/mlx5/mlx5_flow.h       |  153 ++++-\n drivers/net/mlx5/mlx5_flow_dv.c    |  612 +++++++++++++++++\n drivers/net/mlx5/mlx5_flow_meter.c | 1283 ++++++++++++++++++++++++++++++++++++\n drivers/net/mlx5/mlx5_glue.c       |   30 +\n drivers/net/mlx5/mlx5_glue.h       |    9 +\n drivers/net/mlx5/mlx5_prm.h        |   45 ++\n 12 files changed, 2804 insertions(+), 53 deletions(-)\n create mode 100644 drivers/net/mlx5/mlx5_flow_meter.c"
}