Show a cover letter.

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

{
    "id": 892,
    "url": "https://patches.dpdk.org/api/covers/892/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/cover/20240426122203.32357-1-nsaxena@marvell.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<20240426122203.32357-1-nsaxena@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20240426122203.32357-1-nsaxena@marvell.com",
    "date": "2024-04-26T12:22:01",
    "name": "[RFC,0/2] add feature arc in rte_graph",
    "submitter": {
        "id": 3320,
        "url": "https://patches.dpdk.org/api/people/3320/?format=api",
        "name": "Nitin Saxena",
        "email": "nsaxena@marvell.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/cover/20240426122203.32357-1-nsaxena@marvell.com/mbox/",
    "series": [
        {
            "id": 31832,
            "url": "https://patches.dpdk.org/api/series/31832/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=31832",
            "date": "2024-04-26T12:22:03",
            "name": "add feature arc in rte_graph",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/31832/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/covers/892/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 14D1343F15;\n\tFri, 26 Apr 2024 14:23:44 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id F3FD143DBC;\n\tFri, 26 Apr 2024 14:23:43 +0200 (CEST)",
            "from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com\n [67.231.156.173])\n by mails.dpdk.org (Postfix) with ESMTP id B107943DB6\n for <dev@dpdk.org>; Fri, 26 Apr 2024 14:23:41 +0200 (CEST)",
            "from pps.filterd (m0045851.ppops.net [127.0.0.1])\n by mx0b-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id\n 43Q6DF6i016504;\n Fri, 26 Apr 2024 05:23:37 -0700",
            "from dc6wp-exch02.marvell.com ([4.21.29.225])\n by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3xpxn1npaw-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n Fri, 26 Apr 2024 05:23:32 -0700 (PDT)",
            "from DC6WP-EXCH02.marvell.com (10.76.176.209) by\n DC6WP-EXCH02.marvell.com (10.76.176.209) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.1544.4; Fri, 26 Apr 2024 05:22:06 -0700",
            "from maili.marvell.com (10.69.176.80) by DC6WP-EXCH02.marvell.com\n (10.76.176.209) with Microsoft SMTP Server id 15.2.1544.4 via Frontend\n Transport; Fri, 26 Apr 2024 05:22:06 -0700",
            "from localhost.localdomain (unknown [10.28.36.207])\n by maili.marvell.com (Postfix) with ESMTP id D4C803F7069;\n Fri, 26 Apr 2024 05:22:04 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=\n from:to:cc:subject:date:message-id:mime-version\n :content-transfer-encoding:content-type; s=pfpt0220; bh=B2nAnS+G\n CwvIWtB6i/UGh92h0voY+dD1XWuNPoBuoFk=; b=I5P2nuVgpruIPXAM2gnEMSPP\n RO3pHND9WqSFLlAC/5CRksrDl4Y86xPTIykobBeEfxj/fES5r8Nmd3NVBZKyNaB/\n OtY7MSui1jd8BYl6K3OP1jMrkZgXTzlLGyD2cNQmbHJe5+i/ufeOVQEIgmuZfsdg\n G0UfqGDBwOLaY6KQj8jWgdcveLe7Vq6dh5VhacjqYG3zXy8bkr+SNmuzkqIB3Tf9\n OQasjKDH1ICVNbn/ESPX9JrPmloO5tbprquYysLQhsYt/o06wMjJjdrLEg4Cz6te\n 8qJxCdgwDKUXFaE8ck3I1XNQWS7yOy4ESH72RnE8yRORjONp+hZzu3MFJg0F3w==",
        "From": "Nitin Saxena <nsaxena@marvell.com>",
        "To": "Jerin Jacob <jerinj@marvell.com>, Kiran Kumar K <kirankumark@marvell.com>,\n Nithin Dabilpuram <ndabilpuram@marvell.com>, Zhirun Yan\n <yanzhirun_163@163.com>",
        "CC": "<dev@dpdk.org>",
        "Subject": "[RFC PATCH 0/2] add feature arc in rte_graph",
        "Date": "Fri, 26 Apr 2024 17:52:01 +0530",
        "Message-ID": "<20240426122203.32357-1-nsaxena@marvell.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Proofpoint-GUID": "T_U5jgvILwGZxoruyEJikoy_uU3uytxo",
        "X-Proofpoint-ORIG-GUID": "T_U5jgvILwGZxoruyEJikoy_uU3uytxo",
        "X-Proofpoint-Virus-Version": "vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1011,Hydra:6.0.650,FMLib:17.11.176.26\n definitions=2024-04-26_12,2024-04-26_02,2023-05-22_02",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "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"
    },
    "content": "Feature arc represents an ordered list of features/protocols at a given\nnetworking layer. It is a high level abstraction to connect various\nrte_graph nodes, as feature nodes, and allow packets steering across\nthese nodes in a generic manner.\n\nFeatures (or feature nodes) are nodes which handles partial or complete\nhandling of a protocol in fast path. Like ipv4-rewrite node, which adds\nrewrite data to an outgoing IPv4 packet.\n\nHowever in above example, outgoing interface(say \"eth0\") may have\noutbound IPsec policy enabled, hence packets must be steered from\nipv4-rewrite node to ipsec-outbound-policy node for outbound IPsec\npolicy lookup. On the other hand, packets routed to another interface\n(eth1) will not be sent to ipsec-outbound-policy node as IPsec feature\nis disabled on eth1. Feature-arc allows rte_graph applications to manage\nsuch constraints easily\n\nFeature arc abstraction allows rte_graph based application to\n\n1. Seamlessly steer packets across feature nodes based on wheter feature\nis enabled or disabled on an interface. Features enabled on one\ninterface may not be enabled on another interface with in a same feature\narc.\n\n2. Allow enabling/disabling of features on an interface at runtime,\nso that if a feature is disabled, packets associated with that interface\nwon't be steered to corresponding feature node.\n\n3. Provides mechanism to hook custom/user-defined nodes to a feature\nnode and allow packet steering from feature node to custom node without\nchanging former's fast path function\n\n4. Allow expressing features in a particular sequential order so that\npackets are steered in an ordered way across nodes in fast path. For\neg: if IPsec and IPv4 features are enabled on an ingress interface,\npackets must be sent to IPsec inbound policy node first and then to ipv4\nlookup node.\n\nThis patch series adds feature arc library in rte_graph and also adds\n\"ipv4-output\" feature arc handling in \"ipv4-rewrite\" node.\n\nNitin Saxena (2):\n  graph: add feature arc support\n  graph: add ip4 output feature arc\n\n lib/graph/graph_feature_arc.c            | 834 +++++++++++++++++++++++\n lib/graph/meson.build                    |   2 +\n lib/graph/rte_graph_feature_arc.h        | 310 +++++++++\n lib/graph/rte_graph_feature_arc_worker.h | 483 +++++++++++++\n lib/graph/version.map                    |  16 +\n lib/node/ip4_rewrite.c                   | 278 ++++++--\n lib/node/ip4_rewrite_priv.h              |  10 +-\n lib/node/node_private.h                  |  10 +-\n lib/node/rte_node_ip4_api.h              |   3 +\n 9 files changed, 1878 insertions(+), 68 deletions(-)\n create mode 100644 lib/graph/graph_feature_arc.c\n create mode 100644 lib/graph/rte_graph_feature_arc.h\n create mode 100644 lib/graph/rte_graph_feature_arc_worker.h"
}