get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 84065,
    "url": "http://patches.dpdk.org/api/patches/84065/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20201112153911.15044-2-maxime.leroy@6wind.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": "<20201112153911.15044-2-maxime.leroy@6wind.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20201112153911.15044-2-maxime.leroy@6wind.com",
    "date": "2020-11-12T15:39:09",
    "name": "[v2,1/2] net/mlx5: fix Rx queue count calculation",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "2a19fe4b0c126328d14ae690d2fad3c94550f92c",
    "submitter": {
        "id": 112,
        "url": "http://patches.dpdk.org/api/people/112/?format=api",
        "name": "Maxime Leroy",
        "email": "maxime.leroy@6wind.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/20201112153911.15044-2-maxime.leroy@6wind.com/mbox/",
    "series": [
        {
            "id": 13846,
            "url": "http://patches.dpdk.org/api/series/13846/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=13846",
            "date": "2020-11-12T15:39:08",
            "name": "net/mlx5: fixes for rx queue count calculation",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/13846/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/84065/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/84065/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id DB7BDA09D3;\n\tThu, 12 Nov 2020 16:39:57 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 57D595B30;\n\tThu, 12 Nov 2020 16:39:26 +0100 (CET)",
            "from mail-wr1-f68.google.com (mail-wr1-f68.google.com\n [209.85.221.68]) by dpdk.org (Postfix) with ESMTP id 30FFF592C\n for <dev@dpdk.org>; Thu, 12 Nov 2020 16:39:22 +0100 (CET)",
            "by mail-wr1-f68.google.com with SMTP id 33so6451707wrl.7\n for <dev@dpdk.org>; Thu, 12 Nov 2020 07:39:22 -0800 (PST)",
            "from bolet.dev.6wind.com. (host.78.145.23.62.rev.coltfrance.com.\n [62.23.145.78])\n by smtp.gmail.com with ESMTPSA id g4sm6004938wrp.0.2020.11.12.07.39.20\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 12 Nov 2020 07:39:20 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google;\n h=from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version:content-transfer-encoding;\n bh=o3UPQPfPoH2OvjdE0If0pFykDb/+Lx2Yl5cDaJPSalU=;\n b=Yx7cHCQo/vDoXwYLBeg/vKtppZIcELKI2/16G3la1go48dTDEW2+ljRgGxDGjQOpBv\n q0jm3kkksEaypyFwj/wwJYMKCu7uxBUck1kti/Cs8NR/+ZhGcRkZG/8zZ9DmXV+IykcS\n /5MU9cQEiY3TSZ9dbfjQsf8vQsj8gajUbSWTLf4TnWOTR1r2XYHeP+fhNfbrYcTbuq1g\n aibg/pgm7KzZYS3xFcTzD8sObTbtZ31Hiun/9GkFjOqUSKKzD3oNZxTU1fBaN3SBrHoQ\n lzNGoOf349ZrxFSd4ClONyFDZjHdy4tiNf5m47CdXh9XCIhMvyLrwyHN0Xuc33BehUBW\n Uw6w==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20161025;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n :references:mime-version:content-transfer-encoding;\n bh=o3UPQPfPoH2OvjdE0If0pFykDb/+Lx2Yl5cDaJPSalU=;\n b=jJxu8jQ32bezZAPjd/r3uWcD613jRu3/AVSmDjYtRr3Xx1TcfaFnWoHRLJvngJ000C\n HHBWoiAZQTuFBfwbb/vFOFDj3tXwV1GduizzlOqvkZVNG+NrtZa829dPbT832xA4ZL7v\n 1LzhDWWEFrWEx+Ahm1J36AzDFQoB0xnLZhHniJB8o0CXfjPAXUyIynXMhhOLP3Ab90NR\n 6Ly1pS4X1owZVbx1Xxsa9+9GODApdxo/cLIqrkyDDmc59zbCyxuruGQlm7Va1Vmnx7yc\n AIzrIMTp9Lx2aNlujhD4x3M/9X9zPWO5OH6ZS1I/2D5jUWpe9NF7mhn81x9VkhZd4qsM\n 1p9Q==",
        "X-Gm-Message-State": "AOAM533itDcm1NXN+vmoR6/hWrxfuhzU0YBkItaGOT3DIz2sAffcwGjs\n 9zRWYR8hEow8mSWVrJhYGJJa/g==",
        "X-Google-Smtp-Source": "\n ABdhPJyn71tiA1wc+PgcfaiiJp81C5kuUf4QRorcGYvvI/1107Csh3/JCJkJbqpthLGn/JiN/uHclA==",
        "X-Received": "by 2002:adf:e787:: with SMTP id n7mr105703wrm.153.1605195560943;\n Thu, 12 Nov 2020 07:39:20 -0800 (PST)",
        "From": "Maxime Leroy <maxime.leroy@6wind.com>",
        "To": "Matan Azrad <matan@nvidia.com>, Shahaf Shuler <shahafs@nvidia.com>,\n Viacheslav Ovsiienko <viacheslavo@nvidia.com>,\n Alexander Kozyrev <akozyrev@nvidia.com>",
        "Cc": "dev@dpdk.org,\n\tNelio Laranjeiro <nelio.laranjeiro@6wind.com>",
        "Date": "Thu, 12 Nov 2020 16:39:09 +0100",
        "Message-Id": "<20201112153911.15044-2-maxime.leroy@6wind.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20201112153911.15044-1-maxime.leroy@6wind.com>",
        "References": "<20201112153911.15044-1-maxime.leroy@6wind.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v2 1/2] net/mlx5: fix Rx queue count calculation",
        "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 commit d2d57605522d (\"net/mlx5: fix Rx queue count calculation\") is\nuncorrect because the count calculation is wrong for the next cqe:\n\nExample:\n\n Compressed Set of packets 1  |   Compressed Set of packets 2\nC | a | e0 | e1 | e2 | e3 | e4 | e5 | C | a | e0\n\nThere are 2 compressed set of packets in the first queue. For the first\nset, n is computed correctly.\n\nBut for the second, n is not computed properly. Because the zip context\nis for the first set. The  second set is not yet decompressed, so\nthere are no context.\n\nTo fix the issue, we should only use the zip context for the first CQEs\nserie.\n\nFixes: d2d57605522d (\"net/mlx5: fix Rx queue count calculation\")\nSigned-off-by: Maxime Leroy <maxime.leroy@6wind.com>\nSigned-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>\n---\n drivers/net/mlx5/mlx5_rxtx.c | 16 ++++++++++------\n 1 file changed, 10 insertions(+), 6 deletions(-)",
    "diff": "diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c\nindex 844a1c63..2733dcd3 100644\n--- a/drivers/net/mlx5/mlx5_rxtx.c\n+++ b/drivers/net/mlx5/mlx5_rxtx.c\n@@ -462,11 +462,18 @@ rx_queue_count(struct mlx5_rxq_data *rxq)\n {\n \tstruct rxq_zip *zip = &rxq->zip;\n \tvolatile struct mlx5_cqe *cqe;\n-\tunsigned int cq_ci = rxq->cq_ci;\n \tconst unsigned int cqe_n = (1 << rxq->cqe_n);\n \tconst unsigned int cqe_cnt = cqe_n - 1;\n-\tunsigned int used = 0;\n+\tunsigned int cq_ci, used;\n \n+\t/* if we are processing a compressed cqe */\n+\tif (zip->ai) {\n+\t\tused = zip->cqe_cnt - zip->ai;\n+\t\tcq_ci = zip->cq_ci;\n+\t} else {\n+\t\tused = 0;\n+\t\tcq_ci = rxq->cq_ci;\n+\t}\n \tcqe = &(*rxq->cqes)[cq_ci & cqe_cnt];\n \twhile (check_cqe(cqe, cqe_n, cq_ci) != MLX5_CQE_STATUS_HW_OWN) {\n \t\tint8_t op_own;\n@@ -474,10 +481,7 @@ rx_queue_count(struct mlx5_rxq_data *rxq)\n \n \t\top_own = cqe->op_own;\n \t\tif (MLX5_CQE_FORMAT(op_own) == MLX5_COMPRESSED)\n-\t\t\tif (unlikely(zip->ai))\n-\t\t\t\tn = zip->cqe_cnt - zip->ai;\n-\t\t\telse\n-\t\t\t\tn = rte_be_to_cpu_32(cqe->byte_cnt);\n+\t\t\tn = rte_be_to_cpu_32(cqe->byte_cnt);\n \t\telse\n \t\t\tn = 1;\n \t\tcq_ci += n;\n",
    "prefixes": [
        "v2",
        "1/2"
    ]
}