Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/117739/?format=api
http://patches.dpdk.org/api/patches/117739/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20221009132515.584958-1-andrew.rybchenko@oktetlabs.ru/", "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": "<20221009132515.584958-1-andrew.rybchenko@oktetlabs.ru>", "list_archive_url": "https://inbox.dpdk.org/dev/20221009132515.584958-1-andrew.rybchenko@oktetlabs.ru", "date": "2022-10-09T13:25:11", "name": "[v5,0/4] mempool: fix mempool cache flushing algorithm", "commit_ref": null, "pull_url": null, "state": null, "archived": false, "hash": null, "submitter": { "id": 2013, "url": "http://patches.dpdk.org/api/people/2013/?format=api", "name": "Andrew Rybchenko", "email": "Andrew.Rybchenko@oktetlabs.ru" }, "delegate": null, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20221009132515.584958-1-andrew.rybchenko@oktetlabs.ru/mbox/", "series": [], "comments": "http://patches.dpdk.org/api/patches/117739/comments/", "check": "pending", "checks": "http://patches.dpdk.org/api/patches/117739/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 30EA5A0542;\n\tSun, 9 Oct 2022 15:25:26 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 27816400D5;\n\tSun, 9 Oct 2022 15:25:26 +0200 (CEST)", "from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113])\n by mails.dpdk.org (Postfix) with ESMTP id 0164440042\n for <dev@dpdk.org>; Sun, 9 Oct 2022 15:25:25 +0200 (CEST)", "by shelob.oktetlabs.ru (Postfix, from userid 115)\n id 97BA07F; Sun, 9 Oct 2022 16:25:24 +0300 (MSK)", "from aros.oktetlabs.ru (aros.oktetlabs.ru [192.168.38.17])\n by shelob.oktetlabs.ru (Postfix) with ESMTP id 1318A66;\n Sun, 9 Oct 2022 16:25:24 +0300 (MSK)" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.6 (2021-04-09) on mail1.oktetlabs.ru", "X-Spam-Level": "", "X-Spam-Status": "No, score=0.8 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_DISCARD\n autolearn=no autolearn_force=no version=3.4.6", "DKIM-Filter": "OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 1318A66", "Authentication-Results": "shelob.oktetlabs.ru/1318A66; dkim=none;\n dkim-atps=neutral", "From": "Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>", "To": "Olivier Matz <olivier.matz@6wind.com>", "Cc": "dev@dpdk.org, =?utf-8?q?Morten_Br=C3=B8rup?= <mb@smartsharesystems.com>,\n Bruce Richardson <bruce.richardson@intel.com>", "Subject": "[PATCH v5 0/4] mempool: fix mempool cache flushing algorithm", "Date": "Sun, 9 Oct 2022 16:25:11 +0300", "Message-Id": "<20221009132515.584958-1-andrew.rybchenko@oktetlabs.ru>", "X-Mailer": "git-send-email 2.30.2", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "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": "v5 changes (Andrew Rybchenko):\n\n- Factor out cosmetic fixes into separate patches to make all\n patches smaller and easier to review\n- Remove extra check as per review notes\n- Factor out entire cache flushing into a separate patch.\n It is nice from logical changes separation point of view,\n easier to bisect and revert.\n\nv4 changes:\n\n- Updated patch title to reflect that the scope of the patch is only\nmempool cache flushing.\n\n- Do not replace rte_memcpy() with alternative copying method. This was\na pure optimization, not a fix.\n\n- Elaborate even more on the bugs fixed by the modifications.\n\n- Added 4th bullet item to the patch description, regarding\nrte_mempool_ops_enqueue_bulk() with RTE_LIBRTE_MEMPOOL_DEBUG.\n\nv3 changes:\n\n- Actually remove my modifications of the rte_mempool_cache structure.\n\nv2 changes:\n\n- Not adding the new objects to the mempool cache before flushing it\nalso allows the memory allocated for the mempool cache to be reduced\nfrom 3 x to 2 x RTE_MEMPOOL_CACHE_MAX_SIZE.\nHowever, such this change would break the ABI, so it was removed in v2.\n\n- The mempool cache should be cache line aligned for the benefit of the\ncopying method, which on some CPU architectures performs worse on data\ncrossing a cache boundary.\nHowever, such this change would break the ABI, so it was removed in v2;\nand yet another alternative copying method replaced the rte_memcpy().\n\nAndrew Rybchenko (3):\n mempool: check driver enqueue result in one place\n mempool: avoid usage of term ring on put\n mempool: flush cache completely on overflow\n\nMorten Brørup (1):\n mempool: fix cache flushing algorithm\n\n lib/mempool/rte_mempool.c | 5 ++++\n lib/mempool/rte_mempool.h | 55 ++++++++++++++++++++-------------------\n 2 files changed, 33 insertions(+), 27 deletions(-)", "diff": null, "prefixes": [ "v5", "0/4" ] }{ "id": 117739, "url": "