get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 92825,
    "url": "http://patches.dpdk.org/api/patches/92825/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20210505065008.30680-11-bingz@nvidia.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": "<20210505065008.30680-11-bingz@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210505065008.30680-11-bingz@nvidia.com",
    "date": "2021-05-05T06:50:01",
    "name": "[v3,10/17] net/mlx5: add ASO CT destroy handling",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "a91430cc4231a579f31078d2ff7976717020b47c",
    "submitter": {
        "id": 1976,
        "url": "http://patches.dpdk.org/api/people/1976/?format=api",
        "name": "Bing Zhao",
        "email": "bingz@nvidia.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patches.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20210505065008.30680-11-bingz@nvidia.com/mbox/",
    "series": [
        {
            "id": 16818,
            "url": "http://patches.dpdk.org/api/series/16818/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=16818",
            "date": "2021-05-05T06:49:53",
            "name": "[v3,01/17] common/mlx5: add connection tracking object definition",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/16818/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/92825/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/92825/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 8078FA0524;\n\tWed,  5 May 2021 08:52:25 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E19CA410F2;\n\tWed,  5 May 2021 08:51:29 +0200 (CEST)",
            "from NAM02-BL2-obe.outbound.protection.outlook.com\n (mail-eopbgr750081.outbound.protection.outlook.com [40.107.75.81])\n by mails.dpdk.org (Postfix) with ESMTP id CB2CF4111E\n for <dev@dpdk.org>; Wed,  5 May 2021 08:51:23 +0200 (CEST)",
            "from BN8PR15CA0008.namprd15.prod.outlook.com (2603:10b6:408:c0::21)\n by BY5PR12MB3809.namprd12.prod.outlook.com (2603:10b6:a03:1aa::22)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.41; Wed, 5 May\n 2021 06:51:22 +0000",
            "from BN8NAM11FT044.eop-nam11.prod.protection.outlook.com\n (2603:10b6:408:c0:cafe::a6) by BN8PR15CA0008.outlook.office365.com\n (2603:10b6:408:c0::21) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend\n Transport; Wed, 5 May 2021 06:51:22 +0000",
            "from mail.nvidia.com (216.228.112.34) by\n BN8NAM11FT044.mail.protection.outlook.com (10.13.177.219) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4087.32 via Frontend Transport; Wed, 5 May 2021 06:51:22 +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; Wed, 5 May\n 2021 06:51:11 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=B+24A/GDNJGTJ4c47rkRCEG/FZ6pFBKh1MxQObeFKYZj8LQ65QolcVnHG3TuaqExGT8U68Jy41sgHBDTnnjwZR6ZkQUHg5hx/O1zv1+CINQmA1ZAMtfNUoOMCmiCAiZc1bRLn3RSa+Eeav0E9zrCJm/ndhy0p0HEH2HYCASHjG3k3IpPQVv27CglmCU9DWEClAl2/WAP7oY6huO71aTc0adyi26gxVWMcbfV6lJBizi/67DIO6ZhzQoD3Xfl99KRgnM52pTE6wpRta+2Puq95lLLGAU69vvoxbQFcQrb8nYWU9GnQs9Q3amiRpqPdZy+Epn5ipZosjaJ59AZbDanaA==",
        "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=Qr7HC4hJvKIVM/qmo50mKNtXO6QNdR/MyAWqaPkmj/4=;\n b=HihLu7+FGnLEnByVRycSExpnHW9cQVMZyZktpLkg/PoszQqDBc4i22CYzyGg5JNdLZR1vF5Zemtz9Ys5KH3QFdFapHa+dkkMD0xirHc5PXFU5l/Wc+w2CK0b7MtRaAWwneZstXAIn/GUwbGSX8A5GqgCZ0xq+apmpwIJCXwSLIi6yPUz+QHz3ss52OcjkiJIU2hJHGRozWPwwiEHJKe0ZmNKGTpOztuuXMZlOwad3mkdjZc9iL+VIUNZt28814ZL+g0sPG4xlWmX+Po//XnhXiH10APAqaOYb7cyhvsatkxEvadaGWqjrZJFmbZwOcABtvL0Hz3KM+HMJmjBlwUz0Q==",
        "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=Qr7HC4hJvKIVM/qmo50mKNtXO6QNdR/MyAWqaPkmj/4=;\n b=HFamT1Seoej+v+GVKrlZvNHgRuY+S+Ec0FU9RiQ2x++5BRm7h7rcsAMtppNs7ABN6Hn4cHKVWNrAtF8Dx8+OjUEiWBxGloImwKhiz94TtNucZZuP3reZ34sb+wAOjuc+N8qYr+L5RBPZkZobbmYcIYvUWoISQmZhQnEwCCVBthpuVwSEv7CTFrwGFX795TwT+foStGHQkSqU2dUuqGWuwyLy34drYxqWU8T8b0kqIYUvIpHzQ/9zoApTFCCcEFaU1DExCOCWnhGG8vITeysAUYDuBcFiVe5hg20nYYN3FFT6d8+2+IN6Vq1k8DIgnCPfSmi4MxCNrxzBJoavRJ7ZdA==",
        "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>, <thomas@monjalon.net>",
        "CC": "<dev@dpdk.org>, <orika@nvidia.com>, <rasland@nvidia.com>",
        "Date": "Wed, 5 May 2021 09:50:01 +0300",
        "Message-ID": "<20210505065008.30680-11-bingz@nvidia.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20210505065008.30680-1-bingz@nvidia.com>",
        "References": "<20210427153811.11554-1-bingz@nvidia.com>\n <20210505065008.30680-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": "HQMAIL101.nvidia.com (172.20.187.10) To\n HQMAIL107.nvidia.com (172.20.187.13)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "3395d138-5408-4404-b057-08d90f9231df",
        "X-MS-TrafficTypeDiagnostic": "BY5PR12MB3809:",
        "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr",
        "X-Microsoft-Antispam-PRVS": "\n <BY5PR12MB38094F611E5A8B542D6E022FD0599@BY5PR12MB3809.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:2887;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n cts7y3ZH0Rr5d2yW4gsFgsEMQk+xiabxkiLtbwfZnD/W0bl6S8z4U/jjX+4w8UAO8ic/nkU1GnPW4Tsy9euBhVmqhEERoK6LzWd9xr/+9IE7TvNzF3gL1R6yuHj94f6bKkBd7JWA0ExWsOeQ+hVN/8UPouJbNNzKtR1QCDYSBE6Hllw49uOf5G0bQg7fxq5VMEOZSoSZ3h0Up6buQXZNpVML/aFTcjzEArSZoz8qALG114TkhFmqRwmXMvq6dirZcYnp5lHBeGDKBTB42IvyQ6HKut4iIAwwtdT8kaealYGX4Bi7+Htn8SQLTE2DYN3GuAjyd5Ae/4JRT6xfvhFwijLU42qwKJ5If78vG4dU2gedJq08h5K7kGWbyNZOh4N3IMjX55I27UwsAYoek6/Q+XAJ5N8LzS24qmR90RhLnlQAK4E1bwhMe4ABF4fQgtR0s7b3PBEXrg9vERH/zBHpmMtEXftjl8XKjusIuEIkon44KyOxyvLpGpjyhgcNo6VDE4Yq3lCv2DVS6znSVpykWvzvoOmZTdTmiymS6lDu00zNt+OqEdkc0rR7MjCy81Kln60/3/zneqaBHRIzLggdRlxvHbb9UqZmoCPPzSbySuUiG55lc9lRSEcMtQ8bWNvOXRP7JyiYBFzzRghR11NZDw==",
        "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)(396003)(346002)(136003)(39860400002)(376002)(36840700001)(46966006)(107886003)(5660300002)(186003)(2906002)(8676002)(86362001)(83380400001)(110136005)(82740400003)(16526019)(70586007)(36756003)(55016002)(70206006)(36906005)(26005)(316002)(7696005)(54906003)(82310400003)(6286002)(336012)(356005)(426003)(2616005)(36860700001)(478600001)(4326008)(7636003)(8936002)(6666004)(1076003)(47076005);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "05 May 2021 06:51:22.4012 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 3395d138-5408-4404-b057-08d90f9231df",
        "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 BN8NAM11FT044.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BY5PR12MB3809",
        "Subject": "[dpdk-dev] [PATCH v3 10/17] net/mlx5: add ASO CT destroy handling",
        "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 trying to destroy an ASO connection tracking context, the DR\naction created on this context should also be destroyed. Before\ninserting the related software object into the management free list,\nthe reference count should be checked.\n\nRight now, the context object will not be freed to the system and\nwill be reused directly from the free list.\n\nSigned-off-by: Bing Zhao <bingz@nvidia.com>\n---\n drivers/net/mlx5/mlx5_flow_dv.c | 16 +++++++++++++++-\n 1 file changed, 15 insertions(+), 1 deletion(-)",
    "diff": "diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c\nindex 84e7f0b3d3..0fa0671ace 100644\n--- a/drivers/net/mlx5/mlx5_flow_dv.c\n+++ b/drivers/net/mlx5/mlx5_flow_dv.c\n@@ -11136,9 +11136,15 @@ flow_dv_aso_ct_release(struct rte_eth_dev *dev, uint32_t idx)\n {\n \tstruct mlx5_priv *priv = dev->data->dev_private;\n \tstruct mlx5_aso_ct_pools_mng *mng = priv->sh->ct_mng;\n+\tuint32_t ret;\n \tstruct mlx5_aso_ct_action *ct = flow_aso_ct_get_by_idx(dev, idx);\n-\tuint32_t ret = __atomic_sub_fetch(&ct->refcnt, 1, __ATOMIC_RELAXED);\n+\tenum mlx5_aso_ct_state state =\n+\t\t\t__atomic_load_n(&ct->state, __ATOMIC_RELAXED);\n \n+\t/* Cannot release when CT is in the ASO SQ. */\n+\tif (state == ASO_CONNTRACK_WAIT || state == ASO_CONNTRACK_QUERY)\n+\t\treturn -1;\n+\tret = __atomic_sub_fetch(&ct->refcnt, 1, __ATOMIC_RELAXED);\n \tif (!ret) {\n \t\tif (ct->dr_action_orig) {\n #ifdef HAVE_MLX5_DR_ACTION_ASO_CT\n@@ -11154,6 +11160,8 @@ flow_dv_aso_ct_release(struct rte_eth_dev *dev, uint32_t idx)\n #endif\n \t\t\tct->dr_action_rply = NULL;\n \t\t}\n+\t\t/* Clear the state to free, no need in 1st allocation. */\n+\t\tMLX5_ASO_CT_UPDATE_STATE(ct, ASO_CONNTRACK_FREE);\n \t\trte_spinlock_lock(&mng->ct_sl);\n \t\tLIST_INSERT_HEAD(&mng->free_cts, ct, next);\n \t\trte_spinlock_unlock(&mng->ct_sl);\n@@ -13648,6 +13656,12 @@ flow_dv_action_destroy(struct rte_eth_dev *dev,\n \t\t\tDRV_LOG(DEBUG, \"Indirect age action %\" PRIu32 \" was\"\n \t\t\t\t\" released with references %d.\", idx, ret);\n \t\treturn 0;\n+\tcase MLX5_INDIRECT_ACTION_TYPE_CT:\n+\t\tret = flow_dv_aso_ct_release(dev, idx);\n+\t\tif (ret)\n+\t\t\tDRV_LOG(DEBUG, \"Connection tracking object %u still \"\n+\t\t\t\t\"has references %d.\", idx, ret);\n+\t\treturn 0;\n \tdefault:\n \t\treturn rte_flow_error_set(error, ENOTSUP,\n \t\t\t\t\t  RTE_FLOW_ERROR_TYPE_ACTION,\n",
    "prefixes": [
        "v3",
        "10/17"
    ]
}