get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 104817,
    "url": "http://patchwork.dpdk.org/api/patches/104817/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20211202031530.1808112-1-zhengbin.89740@bytedance.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": "<20211202031530.1808112-1-zhengbin.89740@bytedance.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20211202031530.1808112-1-zhengbin.89740@bytedance.com",
    "date": "2021-12-02T03:15:30",
    "name": "net/ixgbe: add vector Rx parameter check",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "95a52bb0495c5aa39a19cdb116b543d9c81d943a",
    "submitter": {
        "id": 2415,
        "url": "http://patchwork.dpdk.org/api/people/2415/?format=api",
        "name": "Bin Zheng",
        "email": "zhengbin.89740@bytedance.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20211202031530.1808112-1-zhengbin.89740@bytedance.com/mbox/",
    "series": [
        {
            "id": 20830,
            "url": "http://patchwork.dpdk.org/api/series/20830/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=20830",
            "date": "2021-12-02T03:15:30",
            "name": "net/ixgbe: add vector Rx parameter check",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/20830/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/104817/comments/",
    "check": "warning",
    "checks": "http://patchwork.dpdk.org/api/patches/104817/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 616CDA0C47;\n\tThu,  2 Dec 2021 04:15:47 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 234A04114F;\n\tThu,  2 Dec 2021 04:15:47 +0100 (CET)",
            "from mail-pg1-f171.google.com (mail-pg1-f171.google.com\n [209.85.215.171])\n by mails.dpdk.org (Postfix) with ESMTP id 873984067B\n for <dev@dpdk.org>; Thu,  2 Dec 2021 04:15:45 +0100 (CET)",
            "by mail-pg1-f171.google.com with SMTP id m15so25658171pgu.11\n for <dev@dpdk.org>; Wed, 01 Dec 2021 19:15:45 -0800 (PST)",
            "from workstation-Precision-3640-Tower.bytedance.net\n ([61.120.150.75])\n by smtp.gmail.com with ESMTPSA id z22sm1310205pfe.93.2021.12.01.19.15.40\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 01 Dec 2021 19:15:43 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=bytedance-com.20210112.gappssmtp.com; s=20210112;\n h=from:to:cc:subject:date:message-id:mime-version\n :content-transfer-encoding;\n bh=T/dlw7Hb+Bpb4ExJkWH0dW5ZA+vCeSr5rUD/0n/xw4U=;\n b=IUMAe0TrdeB1Yo0iw6esbb4/cQaPVrIp/+UKyU8I2tsHDv2qktNLmJ5VBcWWt7Tcv+\n kZsF/jozsiy//LT4wkZYGnF7Lt3tXeiyz/4ck49S+a59V7hbjh5Zc+pA4jbXd6ulzVia\n +dj6nv7/YzS15saOB8NVPv3KdrtxQnCTHDGBkZrhq/DDR4WG1CcdbOzWDLFs0Yk/2Rmk\n 8RXeSqwzfUDfGsonX/yaNiSNCd67gjkx2bWwOIOFAJmZ8ROMd3yOymMh1rb6wpW6I0nY\n gsl4Qv+4HHq+CEnDKdW58r81lkY5jzYYLmTUgrD9Cu/TLHU7SBpjdT+mWSbMvwgHOYUq\n S2Sw==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20210112;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n :content-transfer-encoding;\n bh=T/dlw7Hb+Bpb4ExJkWH0dW5ZA+vCeSr5rUD/0n/xw4U=;\n b=w20B41cHh5feFIHibVGziarhUPDSiPBigNAEz/9J2PlGtPYjMY7MICQ+KX7v5Uh/Gf\n v0JycYnk72AbE8kTLVxLKUkYhCYvPn6jdqG+YRV+rr0r04HxJ10xMsybvdHHea8xRPPv\n 9+Fu3EIJXc5Yu//JDWnz++KPSaCUaBUFd04dQjSQaA3VHpYpXoB8CPPmqHnS9daTK9Q/\n xAphSblvqEYhti6VP+KW8eHb/JyyKFnMFCSsK9rSKf9o+QVwgXA1q2fbMoOJbONhPP6P\n PNIhNy80tOruCJyNXG8nQoL1IaZ79qUDnwGPyIIJL2bl2C1cQDlB4sD2k1/DvbDT4ilO\n x7zA==",
        "X-Gm-Message-State": "AOAM531WehJU/oTUlw6yU2Nr8n9BWUzGdK/e2XgD5M3gz68tor0azOlw\n zi2J+3n78xDddul1u2CHd8+/jPHtS5Vfug==",
        "X-Google-Smtp-Source": "\n ABdhPJxBMHAdh2hXi5LZQPafq04dU28ZyqxzpgvDMQgqW4fpAo0ewRMH9ghygqUgzH7b/o+L07kN4Q==",
        "X-Received": "by 2002:aa7:950f:0:b0:4a2:54da:3a73 with SMTP id\n b15-20020aa7950f000000b004a254da3a73mr9853927pfp.18.1638414944463;\n Wed, 01 Dec 2021 19:15:44 -0800 (PST)",
        "From": "Bin Zheng <zhengbin.89740@bytedance.com>",
        "To": "dev@dpdk.org",
        "Cc": "haiyue.wang@intel.com, liangma@liangbit.com,\n Bin Zheng <zhengbin.89740@bytedance.com>, jia.guo@intel.com,\n stable@dpdk.org",
        "Subject": "[PATCH] net/ixgbe: add vector Rx parameter check",
        "Date": "Thu,  2 Dec 2021 11:15:30 +0800",
        "Message-Id": "<20211202031530.1808112-1-zhengbin.89740@bytedance.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "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": "Under the circumstance that `rx_tail` wrap back to zero\nand the advance speed of `rx_tail` is greater than `rxrearm_start`,\n`rx_tail` will catch up with `rxrearm_start` and surpass it.\nThis may cause some mbufs be reused by applicaion.\n\nSo we need to make some restrictions to ensure that\n `rx_tail` will not exceed `rxrearm_start`.\n\ne.g.\n\nRDH: 972 RDT: 991 rxrearm_nb: 991 rxrearm_start: 992 rx_tail: 959\nRDH: 1004 RDT: 1023 rxrearm_nb: 991 rxrearm_start: 0 rx_tail: 991\nRDH: 12 RDT: 31 rxrearm_nb: 991 rxrearm_start: 32 rx_tail: 1023\nRDH: 31 RDT: 63 rxrearm_nb: 960 rxrearm_start: 64 rx_tail: 0\nRDH: 95 RDT: 95 rxrearm_nb: 1016 rxrearm_start: 96 rx_tail: 88\nRDH: 95 RDT: 127 rxrearm_nb: 991 rxrearm_start: 128 rx_tail: 95\n...\nRDH: 908 RDT: 927 rxrearm_nb: 991 rxrearm_start: 928 rx_tail: 895\nRDH: 940 RDT: 959 rxrearm_nb: 991 rxrearm_start: 960 rx_tail: 927\nRDH: 980 RDT: 991 rxrearm_nb: 991 rxrearm_start: 992 rx_tail: 959\nRDH: 991 RDT: 991 rxrearm_nb: 1026 rxrearm_start: 992 rx_tail: 994\n\nwhen `rx_tail` catches up with `rxrearm_start`,\n2(994 - 992) mbufs be reused by applicaion !\n\nBugzilla ID: 882\nFixes: 5a3cca342417 (\"net/ixgbe: fix vector Rx\")\nCc: jia.guo@intel.com\nCc: stable@dpdk.org\n\nSigned-off-by: Bin Zheng <zhengbin.89740@bytedance.com>\n---\n drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 18 +++++++++++++++---\n 1 file changed, 15 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c b/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c\nindex 1eed949495..33d2e96266 100644\n--- a/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c\n+++ b/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c\n@@ -364,9 +364,6 @@ _recv_raw_pkts_vec(struct ixgbe_rx_queue *rxq, struct rte_mbuf **rx_pkts,\n \tuint8_t vlan_flags;\n \tuint16_t udp_p_flag = 0; /* Rx Descriptor UDP header present */\n \n-\t/* nb_pkts has to be floor-aligned to RTE_IXGBE_DESCS_PER_LOOP */\n-\tnb_pkts = RTE_ALIGN_FLOOR(nb_pkts, RTE_IXGBE_DESCS_PER_LOOP);\n-\n \t/* Just the act of getting into the function from the application is\n \t * going to cost about 7 cycles\n \t */\n@@ -380,6 +377,21 @@ _recv_raw_pkts_vec(struct ixgbe_rx_queue *rxq, struct rte_mbuf **rx_pkts,\n \tif (rxq->rxrearm_nb > RTE_IXGBE_RXQ_REARM_THRESH)\n \t\tixgbe_rxq_rearm(rxq);\n \n+\t/*\n+\t * Under the circumstance that `rx_tail` wrap back to zero\n+\t * and the advance speed of `rx_tail` is greater than `rxrearm_start`,\n+\t * `rx_tail` will catch up with `rxrearm_start` and surpass it.\n+\t * This may cause some mbufs be reused by applicaion.\n+\t *\n+\t * So we need to make some restrictions to ensure that\n+\t * `rx_tail` will not exceed `rxrearm_start`.\n+\t */\n+\tif (rxq->rx_tail < rxq->rxrearm_start)\n+\t\tnb_pkts = RTE_MIN(nb_pkts, rxq->rxrearm_start - rxq->rx_tail - 1);\n+\n+\t/* nb_pkts has to be floor-aligned to RTE_IXGBE_DESCS_PER_LOOP */\n+\tnb_pkts = RTE_ALIGN_FLOOR(nb_pkts, RTE_IXGBE_DESCS_PER_LOOP);\n+\n \t/* Before we start moving massive data around, check to see if\n \t * there is actually a packet available\n \t */\n",
    "prefixes": []
}