get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 80243,
    "url": "https://patches.dpdk.org/api/patches/80243/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20201009220202.20834-15-l.wojciechow@partner.samsung.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": "<20201009220202.20834-15-l.wojciechow@partner.samsung.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20201009220202.20834-15-l.wojciechow@partner.samsung.com",
    "date": "2020-10-09T22:02:01",
    "name": "[v6,14/15] distributor: fix flushing in flight packets",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "30e6f3fc289585fa87da99d178b4ff1b2128ae5b",
    "submitter": {
        "id": 1628,
        "url": "https://patches.dpdk.org/api/people/1628/?format=api",
        "name": "Lukasz Wojciechowski",
        "email": "l.wojciechow@partner.samsung.com"
    },
    "delegate": {
        "id": 24651,
        "url": "https://patches.dpdk.org/api/users/24651/?format=api",
        "username": "dmarchand",
        "first_name": "David",
        "last_name": "Marchand",
        "email": "david.marchand@redhat.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20201009220202.20834-15-l.wojciechow@partner.samsung.com/mbox/",
    "series": [
        {
            "id": 12840,
            "url": "https://patches.dpdk.org/api/series/12840/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=12840",
            "date": "2020-10-09T22:01:47",
            "name": "fix distributor synchronization issues",
            "version": 6,
            "mbox": "https://patches.dpdk.org/series/12840/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/80243/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/80243/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 1E90CA04BC;\n\tSat, 10 Oct 2020 00:07:35 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id D528E1D6B7;\n\tSat, 10 Oct 2020 00:03:22 +0200 (CEST)",
            "from mailout1.w1.samsung.com (mailout1.w1.samsung.com\n [210.118.77.11]) by dpdk.org (Postfix) with ESMTP id 7B1901D621\n for <dev@dpdk.org>; Sat, 10 Oct 2020 00:03:11 +0200 (CEST)",
            "from eucas1p1.samsung.com (unknown [182.198.249.206])\n by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id\n 20201009220300euoutp010ddd3bf1a59e8024b1bc4e6293cc1f6b~8cg-203HE2274222742euoutp01J\n for <dev@dpdk.org>; Fri,  9 Oct 2020 22:03:00 +0000 (GMT)",
            "from eusmges3new.samsung.com (unknown [203.254.199.245]) by\n eucas1p2.samsung.com (KnoxPortal) with ESMTP id\n 20201009220254eucas1p23088f6944dac82ccbd8e8a99c0861686~8cg6rNjJ81919219192eucas1p2X;\n Fri,  9 Oct 2020 22:02:54 +0000 (GMT)",
            "from eucas1p2.samsung.com ( [182.198.249.207]) by\n eusmges3new.samsung.com (EUCPMTA) with SMTP id 9F.E2.06318.E0ED08F5; Fri,  9\n Oct 2020 23:02:54 +0100 (BST)",
            "from eusmtrp2.samsung.com (unknown [182.198.249.139]) by\n eucas1p1.samsung.com (KnoxPortal) with ESMTPA id\n 20201009220254eucas1p187bad9a066f00ee4c05ec6ca7fb4decd~8cg6TuLFH0869608696eucas1p1e;\n Fri,  9 Oct 2020 22:02:54 +0000 (GMT)",
            "from eusmgms2.samsung.com (unknown [182.198.249.180]) by\n eusmtrp2.samsung.com (KnoxPortal) with ESMTP id\n 20201009220254eusmtrp2d676157a36dfbba61d71992d371f9437~8cg6TMyfe2402824028eusmtrp2C;\n Fri,  9 Oct 2020 22:02:54 +0000 (GMT)",
            "from eusmtip1.samsung.com ( [203.254.199.221]) by\n eusmgms2.samsung.com (EUCPMTA) with SMTP id 15.5F.06017.E0ED08F5; Fri,  9\n Oct 2020 23:02:54 +0100 (BST)",
            "from Padamandas.fritz.box (unknown [106.210.88.70]) by\n eusmtip1.samsung.com (KnoxPortal) with ESMTPA id\n 20201009220253eusmtip16605958d3be8e27c1c49e660b89cea1a~8cg5xP1em1990219902eusmtip1L;\n Fri,  9 Oct 2020 22:02:53 +0000 (GMT)"
        ],
        "DKIM-Filter": "OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com\n 20201009220300euoutp010ddd3bf1a59e8024b1bc4e6293cc1f6b~8cg-203HE2274222742euoutp01J",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;\n s=mail20170921; t=1602280980;\n bh=v4SHqhfr0CgQSyQySuuoqmQz3Fqbg8VL6UkTHS7IUM8=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=gqzY0e5xCZlNV3yRk9pn0dIhT1lAnL/xxjtuZhrtwU1fj1l3nN/guCjxFcpT4PieB\n dJj9qoxgBIOJHzTpV2jntVz4dAK9ns1mrYohebAdRBxcECInCREPKiFEJQFbQoSaLQ\n Y65UT3Iem20CwsVbkwM2LxDAGHikq8k3LI9JJIWA=",
        "X-AuditID": "cbfec7f5-38bff700000018ae-b3-5f80de0ea37f",
        "From": "Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>",
        "To": "David Hunt <david.hunt@intel.com>, Bruce Richardson\n <bruce.richardson@intel.com>",
        "Cc": "dev@dpdk.org, l.wojciechow@partner.samsung.com, stable@dpdk.org",
        "Date": "Sat, 10 Oct 2020 00:02:01 +0200",
        "Message-Id": "<20201009220202.20834-15-l.wojciechow@partner.samsung.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20201009220202.20834-1-l.wojciechow@partner.samsung.com>",
        "X-Brightmail-Tracker": [
            "\n H4sIAAAAAAAAA+NgFnrGIsWRmVeSWpSXmKPExsWy7djP87p89xriDSZM1LK4screom/SRyaL\n d5+2M1k861nHaPGv4w+7A6vHrwVLWT0W73nJ5HHw3R6mAOYoLpuU1JzMstQifbsEroxpT3qY\n Cm4JVZy94NnAuJ2/i5GTQ0LAROLfu0usXYxcHEICKxglNjbeZQRJCAl8YZSYdtEKIvGZUaJp\n 4QZGmI5L97cwQySWM0q8eXIdyvnEKLF91XY2kCo2AVuJIzO/soLYIgJhEs3Ne1m6GDk4mAWc\n JZ58BSsRFnCVWPNgK9hQFgFViQmNx9hBbF4BN4ndbUvZIZbJS6zecIAZxOYEirfuWsYCsktC\n 4DKbxJmPv9ggilwkJtydwwxhC0u8Or4FqllG4v/O+UwQDdsYJa7+/skI4exnlLjeuwKqylri\n 8L/fbBDXaUqs36UPEXaUWLl9FjNIWEKAT+LGW0GQMDOQOWnbdKgwr0RHmxBEtZ7E056pjDBr\n /6x9wgJhe0i03m5ih4TPVUaJFV82s05glJ+FsGwBI+MqRvHU0uLc9NRi47zUcr3ixNzi0rx0\n veT83E2MwNg//e/41x2M+/4kHWIU4GBU4uFtSG6IF2JNLCuuzD3EKMHBrCTC63T2dJwQb0pi\n ZVVqUX58UWlOavEhRmkOFiVxXuNFL2OFBNITS1KzU1MLUotgskwcnFINjBnn9fj9Z8efvPNz\n e1Pf9B8hTJGFJl9cf99b8jGhSlRY6PSWnRKCihNEvkkHfbzaLjjr2ezsiVwnXNpPf1yi/fXz\n 9V8Crxi3PQjNZGHIDbkr9tHx/Lt8TnnBO4qNTpn2aXyLMtPZ/afftWbSuPu34KF1zU9zxgx1\n gXu365znWF6oePbW3t54mRJLcUaioRZzUXEiAEO0PSL5AgAA",
            "\n H4sIAAAAAAAAA+NgFjrOLMWRmVeSWpSXmKPExsVy+t/xu7p89xriDU6vEbW4screom/SRyaL\n d5+2M1k861nHaPGv4w+7A6vHrwVLWT0W73nJ5HHw3R6mAOYoPZui/NKSVIWM/OISW6VoQwsj\n PUNLCz0jE0s9Q2PzWCsjUyV9O5uU1JzMstQifbsEvYxpT3qYCm4JVZy94NnAuJ2/i5GTQ0LA\n ROLS/S3MXYxcHEICSxklPm9bydLFyAGUkJH4cEkAokZY4s+1LjaImg+MEjNn9LOBJNgEbCWO\n zPzKClIvIhAmcWKlP0iYWcBdYsviqcwgtrCAq8SaB1sZQWwWAVWJCY3H2EFsXgE3id1tS9kh\n 5stLrN5wAKyeEyjeumsZC8SuRkaJLQdeMk9g5FvAyLCKUSS1tDg3PbfYSK84Mbe4NC9dLzk/\n dxMjMBC3Hfu5ZQdj17vgQ4wCHIxKPLwaiQ3xQqyJZcWVuYcYJTiYlUR4nc6ejhPiTUmsrEot\n yo8vKs1JLT7EaAp01URmKdHkfGCU5JXEG5oamltYGpobmxubWSiJ83YIHIwREkhPLEnNTk0t\n SC2C6WPi4JRqYFxxO2bTPy9B3z/HOiWK2S2P5N7jP16zunv/jmvVsWnvfHTXSsUmXWvITnF8\n +9fytvnCJJ6w73s4whPVbyg3Gn+tz3oY0i1XzLvEY3FsceoJjltC8RktTL4S9ZUZ+ryOL/2e\n ++glbY+2FfW538gQ9t15hl7Y2e6keYriGSeKymVTq3YFRu1XYinOSDTUYi4qTgQA/p4gDFoC\n AAA="
        ],
        "X-CMS-MailID": "20201009220254eucas1p187bad9a066f00ee4c05ec6ca7fb4decd",
        "X-Msg-Generator": "CA",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "X-RootMTR": "20201009220254eucas1p187bad9a066f00ee4c05ec6ca7fb4decd",
        "X-EPHeader": "CA",
        "CMS-TYPE": "201P",
        "X-CMS-RootMailID": "20201009220254eucas1p187bad9a066f00ee4c05ec6ca7fb4decd",
        "References": "<20201008052323.11547-1-l.wojciechow@partner.samsung.com>\n <20201009220202.20834-1-l.wojciechow@partner.samsung.com>\n <CGME20201009220254eucas1p187bad9a066f00ee4c05ec6ca7fb4decd@eucas1p1.samsung.com>",
        "Subject": "[dpdk-dev] [PATCH v6 14/15] distributor: fix flushing in flight\n\tpackets",
        "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": "rte_distributor_flush() is using total_outstanding()\nfunction to calculate if it should still wait\nfor processing packets. However in burst mode\nonly backlog packets were counted.\n\nThis patch fixes that issue by counting also in flight\npackets. There are also sum fixes to properly keep\ncount of in flight packets for each worker in bufs[].count.\n\nFixes: 775003ad2f96 (\"distributor: add new burst-capable library\")\nCc: david.hunt@intel.com\nCc: stable@dpdk.org\n\nSigned-off-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>\nAcked-by: David Hunt <david.hunt@intel.com>\n---\n lib/librte_distributor/rte_distributor.c | 12 +++++-------\n 1 file changed, 5 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/lib/librte_distributor/rte_distributor.c b/lib/librte_distributor/rte_distributor.c\nindex 4bd23a990..2478de3b7 100644\n--- a/lib/librte_distributor/rte_distributor.c\n+++ b/lib/librte_distributor/rte_distributor.c\n@@ -467,6 +467,7 @@ rte_distributor_process(struct rte_distributor *d,\n \t\t\t/* Sync with worker on GET_BUF flag. */\n \t\t\tif (__atomic_load_n(&(d->bufs[wid].bufptr64[0]),\n \t\t\t\t__ATOMIC_ACQUIRE) & RTE_DISTRIB_GET_BUF) {\n+\t\t\t\td->bufs[wid].count = 0;\n \t\t\t\trelease(d, wid);\n \t\t\t\thandle_returns(d, wid);\n \t\t\t}\n@@ -481,11 +482,6 @@ rte_distributor_process(struct rte_distributor *d,\n \t\tuint16_t matches[RTE_DIST_BURST_SIZE];\n \t\tunsigned int pkts;\n \n-\t\t/* Sync with worker on GET_BUF flag. */\n-\t\tif (__atomic_load_n(&(d->bufs[wkr].bufptr64[0]),\n-\t\t\t__ATOMIC_ACQUIRE) & RTE_DISTRIB_GET_BUF)\n-\t\t\td->bufs[wkr].count = 0;\n-\n \t\tif ((num_mbufs - next_idx) < RTE_DIST_BURST_SIZE)\n \t\t\tpkts = num_mbufs - next_idx;\n \t\telse\n@@ -605,8 +601,10 @@ rte_distributor_process(struct rte_distributor *d,\n \tfor (wid = 0 ; wid < d->num_workers; wid++)\n \t\t/* Sync with worker on GET_BUF flag. */\n \t\tif ((__atomic_load_n(&(d->bufs[wid].bufptr64[0]),\n-\t\t\t__ATOMIC_ACQUIRE) & RTE_DISTRIB_GET_BUF))\n+\t\t\t__ATOMIC_ACQUIRE) & RTE_DISTRIB_GET_BUF)) {\n+\t\t\td->bufs[wid].count = 0;\n \t\t\trelease(d, wid);\n+\t\t}\n \n \treturn num_mbufs;\n }\n@@ -649,7 +647,7 @@ total_outstanding(const struct rte_distributor *d)\n \tunsigned int wkr, total_outstanding = 0;\n \n \tfor (wkr = 0; wkr < d->num_workers; wkr++)\n-\t\ttotal_outstanding += d->backlog[wkr].count;\n+\t\ttotal_outstanding += d->backlog[wkr].count + d->bufs[wkr].count;\n \n \treturn total_outstanding;\n }\n",
    "prefixes": [
        "v6",
        "14/15"
    ]
}