get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/92278/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 92278,
    "url": "http://patchwork.dpdk.org/api/patches/92278/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20210427153811.11554-14-bingz@nvidia.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.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": "<20210427153811.11554-14-bingz@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210427153811.11554-14-bingz@nvidia.com",
    "date": "2021-04-27T15:38:07",
    "name": "[13/17] net/mlx5: add CT context update",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "bbe358a8c974ef7639b3702c9cf759b97475aa70",
    "submitter": {
        "id": 1976,
        "url": "http://patchwork.dpdk.org/api/people/1976/?format=api",
        "name": "Bing Zhao",
        "email": "bingz@nvidia.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patchwork.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20210427153811.11554-14-bingz@nvidia.com/mbox/",
    "series": [
        {
            "id": 16705,
            "url": "http://patchwork.dpdk.org/api/series/16705/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=16705",
            "date": "2021-04-27T15:37:54",
            "name": "conntrack support in mlx5 PMD",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/16705/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/92278/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/92278/checks/",
    "tags": {},
    "related": [],
    "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 7EF6BA0A02;\n\tTue, 27 Apr 2021 17:40:11 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D35B1412A0;\n\tTue, 27 Apr 2021 17:39:16 +0200 (CEST)",
            "from NAM12-MW2-obe.outbound.protection.outlook.com\n (mail-mw2nam12on2084.outbound.protection.outlook.com [40.107.244.84])\n by mails.dpdk.org (Postfix) with ESMTP id 2F58D41269\n for <dev@dpdk.org>; Tue, 27 Apr 2021 17:39:15 +0200 (CEST)",
            "from MWHPR12CA0048.namprd12.prod.outlook.com (2603:10b6:301:2::34)\n by MN2PR12MB2925.namprd12.prod.outlook.com (2603:10b6:208:ad::11) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Tue, 27 Apr\n 2021 15:39:12 +0000",
            "from CO1NAM11FT067.eop-nam11.prod.protection.outlook.com\n (2603:10b6:301:2:cafe::9) by MWHPR12CA0048.outlook.office365.com\n (2603:10b6:301:2::34) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend\n Transport; Tue, 27 Apr 2021 15:39:12 +0000",
            "from mail.nvidia.com (216.228.112.34) by\n CO1NAM11FT067.mail.protection.outlook.com (10.13.174.212) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4065.21 via Frontend Transport; Tue, 27 Apr 2021 15:39:12 +0000",
            "from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com\n (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 27 Apr\n 2021 15:39:10 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=Jii5dT5UbPqOlWp1DB0jNZSJJ9F78LwwBZik5He7haRl5ZjvGxiS9LFmd3iWbjGV3C6HlH91ZAq39VYejFJR7hec0t5Ifi8y4LFgTm204umSt7/VMoP2dra5lvRhYGCLU8bTztUKaJHdbiOWG2YGrujB/tmcMYQG526rMuCyrJrZHLScNQoe27GClmq0X3VpcwQe2HK3k1/UziUa3yBzmEx3fQU9SlSVVUgIdTCsNNdrL+dcummez1Ez7VGDlZSWai/OK4eWv6v7H95ySa9v8z5UZvMouTKmagdLQnJVRq71L51d00Cc3dcl2PZJC27A+u3yQZgiuz+rOusG3lCRjw==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=ZvvcZ41MQFSisVfMoIJ9y+0a8ewazsaw4XhHV1Kmkmw=;\n b=XVpv04+2JyYbXPgpJn+9tU7Lyc63drTnzqJCxzX+fr0b6QJmnuaVVACmeZcKZZuGYH/ywHmWjmeZr7OHbVAmwTQSjwpYr8eE7EMSeUsz3EHu5AEkXyZH5QlJQBJEVdqACOIJZvT7ZdQ+UPgAXQTZPmWBh1InP72z9BlIh8fxZyRfkG8te4yJ2/LzkfUbvuw8UOlurIFLmaRh6iyVHtkvE1d4FnFfZohV8+kj8gWcNUuYR6vlq1Tas1PCrmXkt97NK4e9jPLsiUFD7oo9+uHg9pKYFil9FmcI5Sao+havgCMGLCWEeNq1Ypzcm1gnLwq49wSqOfA/qFjak6rdh+NjZA==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.112.34) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com;\n dmarc=pass (p=none sp=none pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=ZvvcZ41MQFSisVfMoIJ9y+0a8ewazsaw4XhHV1Kmkmw=;\n b=GLMJpaikVTaoLbQc1K9GbOHu1se9zMqzcGllIZMvNro2qpm8jjE8FW0YLOFqFy28tiw1C0VhAjuOC6K96pJn1jcNXW5e96+CttDtoVeR65z3H2QjZGMuIaB+4WyJubaOoRot204tXKL02oISMbKcP4nZl2PA2K6ddn13cPd3yd/xWQBvKqx5TpbEjuhKWzgitMRxtW0u8kvhrdT5G1sNl7h8KEfBMD+3TyxHqsoZWBM1BBqVrUjQ1NwOIV5qcpIK4ckwK87d00uECYJDaTUyuf4jpQQMTslGR6BQjEW/lBn/NMgO/+WJDMPOGJ8hmjE4DaCZJ1rCGGNOzQJ3knujUw==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.112.34)\n smtp.mailfrom=nvidia.com; dpdk.org; dkim=none (message not signed)\n header.d=none;dpdk.org; dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.112.34 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.112.34; helo=mail.nvidia.com;",
        "From": "Bing Zhao <bingz@nvidia.com>",
        "To": "<viacheslavo@nvidia.com>, <matan@nvidia.com>",
        "CC": "<dev@dpdk.org>, <orika@nvidia.com>, <rasland@nvidia.com>",
        "Date": "Tue, 27 Apr 2021 18:38:07 +0300",
        "Message-ID": "<20210427153811.11554-14-bingz@nvidia.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20210427153811.11554-1-bingz@nvidia.com>",
        "References": "<20210427153811.11554-1-bingz@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[172.20.145.6]",
        "X-ClientProxiedBy": "HQMAIL107.nvidia.com (172.20.187.13) To\n HQMAIL107.nvidia.com (172.20.187.13)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "0c4952c3-2e7b-41a7-2f48-08d909929b24",
        "X-MS-TrafficTypeDiagnostic": "MN2PR12MB2925:",
        "X-Microsoft-Antispam-PRVS": "\n <MN2PR12MB292527CCDEC85CF54EC9A072D0419@MN2PR12MB2925.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:8273;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n gnVu67fRMcAFDbO9nrE4NLCcZoXTas5Qj2e9WT+lLjWsS22si4YTz2DGywCnouodn8RJ8jeYpqRX0SU1M7785VwZ89WTFMl+rq6fp69sXDgMXj7HrtUib6dx9NYUg3J+3Ukcp9mRVoSQ4QWoQhX8yy1Evm05IAis6dJd+BHTjsdGgunDPQI1yzXBvBghz8STdN8pQ0QadpR32YJR865AIAqcgs26g7HUX8W2ZZGF1HFkf/wmSCekngJRkLkNotRacvU/wIdvjdRJzDt3bTCchlwnmd7oy1mXgy5XbkqHHjS6mvobNbof8OY6oEmSY0nPRAGQWY6ymnVhVLDrVM/xNJAjUWiMj/pPUxkrV81iTWg4OQkBDU1UnpWSxUYO4YA3kkJijs3QbhAknMrenXbSWlF8Yun6AqQ7s6ztf31kFRc76L/ZPdE666OFXa/3bnYj9OJmqWMNxmRcHYzy/p5m1kwYpjPFfVFwUQLBmZWL1jBhVsiVFh93+n+sA9QbsQ9OgqwUucRAz/rOztEq5lUUL8o6tY/QQgF47/+qRJBgAscyQztEMRvQWJsjHuWBbwt7O8CXrjD5kZ6i86YH5r11Cr+dGGo5zJ3DKapX9O6CT2SEObAnT4YWNQ+8q5y5F0vVXl91TarBcob0y1g8T9ONMbKarbJXWJlXqYJSG+yMq/bbRdgNbJBoGiECf9QpeWcu",
        "X-Forefront-Antispam-Report": "CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE;\n SFS:(4636009)(346002)(39860400002)(376002)(136003)(396003)(46966006)(36840700001)(36906005)(5660300002)(6666004)(47076005)(8936002)(186003)(86362001)(7636003)(4326008)(316002)(478600001)(107886003)(2906002)(16526019)(55016002)(82310400003)(1076003)(36756003)(70586007)(7696005)(6286002)(70206006)(8676002)(6636002)(356005)(15650500001)(83380400001)(336012)(426003)(2616005)(110136005)(36860700001)(54906003)(26005)(82740400003)(309714004);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "27 Apr 2021 15:39:12.1171 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 0c4952c3-2e7b-41a7-2f48-08d909929b24",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n CO1NAM11FT067.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MN2PR12MB2925",
        "Subject": "[dpdk-dev] [PATCH 13/17] net/mlx5: add CT context update",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "When updating a connection tracking context, two separate parts\ncould be updated.\nFirst, the direction. This will only update the traffic direction\nrecorded in the software for flow creation.\nSecond, the TCP parameters. The hardware context will be updated\nvia the WQE. This update will be blocked until the hardware status\nis updated and ready for the next flow creation.\n\nSigned-off-by: Bing Zhao <bingz@nvidia.com>\n---\n drivers/net/mlx5/mlx5_flow_dv.c | 47 +++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 47 insertions(+)",
    "diff": "diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c\nindex eb24d5e..a27aff6 100644\n--- a/drivers/net/mlx5/mlx5_flow_dv.c\n+++ b/drivers/net/mlx5/mlx5_flow_dv.c\n@@ -13801,6 +13801,51 @@ __flow_dv_action_rss_update(struct rte_eth_dev *dev, uint32_t idx,\n \treturn ret;\n }\n \n+/*\n+ * Updates in place conntrack context or direction.\n+ * Context update should be synchronized.\n+ *\n+ * @param[in] dev\n+ *   Pointer to the Ethernet device structure.\n+ * @param[in] idx\n+ *   The conntrack object ID to be updated.\n+ * @param[in] update\n+ *   Pointer to the structure of information to update.\n+ * @param[out] error\n+ *   Perform verbose error reporting if not NULL. Initialized in case of\n+ *   error only.\n+ *\n+ * @return\n+ *   0 on success, otherwise negative errno value.\n+ */\n+static int\n+__flow_dv_action_ct_update(struct rte_eth_dev *dev, uint32_t idx,\n+\t\t\t   const struct rte_flow_modify_conntrack *update,\n+\t\t\t   struct rte_flow_error *error)\n+{\n+\tstruct mlx5_priv *priv = dev->data->dev_private;\n+\tstruct mlx5_aso_ct_action *ct;\n+\tconst struct rte_flow_action_conntrack *new_prf;\n+\tint ret = 0;\n+\n+\tct = flow_aso_ct_get_by_idx(dev, idx);\n+\tif (!ct->refcnt)\n+\t\treturn rte_flow_error_set(error, ENOMEM,\n+\t\t\t\t\t  RTE_FLOW_ERROR_TYPE_UNSPECIFIED,\n+\t\t\t\t\t  NULL,\n+\t\t\t\t\t  \"CT object is inactive\");\n+\tnew_prf = &update->new_ct;\n+\tif (update->direction)\n+\t\tct->is_original = !!new_prf->is_original_dir;\n+\tif (update->state) {\n+\t\tret = mlx5_aso_ct_update_by_wqe(priv->sh, ct, new_prf);\n+\t\t/* Block until ready or a failure. */\n+\t\tif (!ret)\n+\t\t\tret = mlx5_aso_ct_available(priv->sh, ct);\n+\t}\n+\treturn ret;\n+}\n+\n /**\n  * Updates in place shared action configuration, lock free,\n  * (mutex should be acquired by caller).\n@@ -13836,6 +13881,8 @@ flow_dv_action_update(struct rte_eth_dev *dev,\n \tcase MLX5_INDIRECT_ACTION_TYPE_RSS:\n \t\taction_conf = ((const struct rte_flow_action *)update)->conf;\n \t\treturn __flow_dv_action_rss_update(dev, idx, action_conf, err);\n+\tcase MLX5_INDIRECT_ACTION_TYPE_CT:\n+\t\treturn __flow_dv_action_ct_update(dev, idx, update, err);\n \tdefault:\n \t\treturn rte_flow_error_set(err, ENOTSUP,\n \t\t\t\t\t  RTE_FLOW_ERROR_TYPE_ACTION,\n",
    "prefixes": [
        "13/17"
    ]
}