Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/115605/?format=api
http://patchwork.dpdk.org/api/patches/115605/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20220829151626.2101336-3-sthotton@marvell.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": "<20220829151626.2101336-3-sthotton@marvell.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20220829151626.2101336-3-sthotton@marvell.com", "date": "2022-08-29T15:16:23", "name": "[v1,2/4] mbuf: add second dynamic field member for VA only build", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "37152a2a98450e70f055f3e9755bc34d4c796f53", "submitter": { "id": 2049, "url": "http://patchwork.dpdk.org/api/people/2049/?format=api", "name": "Shijith Thotton", "email": "sthotton@marvell.com" }, "delegate": { "id": 1, "url": "http://patchwork.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20220829151626.2101336-3-sthotton@marvell.com/mbox/", "series": [ { "id": 24452, "url": "http://patchwork.dpdk.org/api/series/24452/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=24452", "date": "2022-08-29T15:16:21", "name": "mbuf dynamic field expansion", "version": 1, "mbox": "http://patchwork.dpdk.org/series/24452/mbox/" } ], "comments": "http://patchwork.dpdk.org/api/patches/115605/comments/", "check": "warning", "checks": "http://patchwork.dpdk.org/api/patches/115605/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 8915DA0542;\n\tMon, 29 Aug 2022 17:17:46 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 509294282F;\n\tMon, 29 Aug 2022 17:17:39 +0200 (CEST)", "from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com\n [67.231.156.173])\n by mails.dpdk.org (Postfix) with ESMTP id C87314003C\n for <dev@dpdk.org>; Mon, 29 Aug 2022 17:17:34 +0200 (CEST)", "from pps.filterd (m0045851.ppops.net [127.0.0.1])\n by mx0b-0016f401.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id\n 27T7fUrJ010634;\n Mon, 29 Aug 2022 08:17:32 -0700", "from dc5-exch01.marvell.com ([199.233.59.181])\n by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3j7jsn7u03-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);\n Mon, 29 Aug 2022 08:17:31 -0700", "from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH01.marvell.com\n (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2;\n Mon, 29 Aug 2022 08:17:29 -0700", "from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com\n (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.2 via Frontend\n Transport; Mon, 29 Aug 2022 08:17:29 -0700", "from localhost.localdomain (unknown [10.28.34.29])\n by maili.marvell.com (Postfix) with ESMTP id 098F03F7068;\n Mon, 29 Aug 2022 08:17:26 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n h=from : to : cc :\n subject : date : message-id : in-reply-to : references : mime-version :\n content-transfer-encoding : content-type; s=pfpt0220;\n bh=gCTtDTWcUaOcCDYgHl29AwWuOsmn3Z/ZKP9P/p2JEVA=;\n b=BVR9NQ8xmPRrUD6Dvb6YtIVDuYMGRH0Juot0Q50mb6Uh9FJaArqWYBdsDEZG2S288y1s\n 3A80LAyPzb9O6bGoYKtI8mZ63Yv1cOLh9GUZ1DoWoieQcj1zdZQoZnZMQscLu2uagw0Q\n 8oxtbAorkdMkutqIc2K4bOe66cVRR27i5mRHQxNlb+Q5+OP/9x5TFedSQAOyaMcRJRko\n x5wRjHwHhf0CWv2sVfHohv6nCABADXbvWqp+6iuBMbG1/wNWDeyVYVjQ8xhR3v2TmFw+\n bng4hFSOYAmx9+ciLulmz4YbjzhIsEaCjgOT2fjcsmaYpsi5wqALLt1GtBmOHsZPD1M6 Ww==", "From": "Shijith Thotton <sthotton@marvell.com>", "To": "<dev@dpdk.org>", "CC": "<pbhagavatula@marvell.com>, Shijith Thotton <sthotton@marvell.com>,\n <Honnappa.Nagarahalli@arm.com>, <bruce.richardson@intel.com>,\n <jerinj@marvell.com>, <mb@smartsharesystems.com>,\n <olivier.matz@6wind.com>, <stephen@networkplumber.org>,\n <thomas@monjalon.net>", "Subject": "[PATCH v1 2/4] mbuf: add second dynamic field member for VA only\n build", "Date": "Mon, 29 Aug 2022 20:46:23 +0530", "Message-ID": "<20220829151626.2101336-3-sthotton@marvell.com>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "\n <PH0PR18MB4425D140694D972E19B6770AD99C9@PH0PR18MB4425.namprd18.prod.outlook.com>", "References": "\n <PH0PR18MB4425D140694D972E19B6770AD99C9@PH0PR18MB4425.namprd18.prod.outlook.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-Proofpoint-ORIG-GUID": "pJlp0RtJM9K-sqVanUtiKywy2p_sqoEq", "X-Proofpoint-GUID": "pJlp0RtJM9K-sqVanUtiKywy2p_sqoEq", "X-Proofpoint-Virus-Version": "vendor=baseguard\n engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.517,FMLib:17.11.122.1\n definitions=2022-08-29_07,2022-08-25_01,2022-06-22_01", "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": "mbuf physical address field is not used in builds which only uses VA. It\nis used to expand the dynamic field area.\n\nSigned-off-by: Shijith Thotton <sthotton@marvell.com>\n---\n lib/mbuf/rte_mbuf_core.h | 26 +++++++++++++++++---------\n lib/mbuf/rte_mbuf_dyn.c | 2 ++\n 2 files changed, 19 insertions(+), 9 deletions(-)", "diff": "diff --git a/lib/mbuf/rte_mbuf_core.h b/lib/mbuf/rte_mbuf_core.h\nindex 81cb07c2e4..98ce62fd6a 100644\n--- a/lib/mbuf/rte_mbuf_core.h\n+++ b/lib/mbuf/rte_mbuf_core.h\n@@ -579,15 +579,23 @@ struct rte_mbuf {\n \tRTE_MARKER cacheline0;\n \n \tvoid *buf_addr; /**< Virtual address of segment buffer. */\n-\t/**\n-\t * Physical address of segment buffer.\n-\t * This field is invalid if the build is configured to use only\n-\t * virtual address as IOVA (i.e. RTE_IOVA_AS_VA is defined).\n-\t * Force alignment to 8-bytes, so as to ensure we have the exact\n-\t * same mbuf cacheline0 layout for 32-bit and 64-bit. This makes\n-\t * working on vector drivers easier.\n-\t */\n-\trte_iova_t buf_iova __rte_aligned(sizeof(rte_iova_t));\n+\tRTE_STD_C11\n+\tunion {\n+\t\t/**\n+\t\t * Physical address of segment buffer.\n+\t\t * This field is invalid if the build is configured to use only\n+\t\t * virtual address as IOVA (i.e. RTE_IOVA_AS_VA is defined).\n+\t\t * Force alignment to 8-bytes, so as to ensure we have the exact\n+\t\t * same mbuf cacheline0 layout for 32-bit and 64-bit. This makes\n+\t\t * working on vector drivers easier.\n+\t\t */\n+\t\trte_iova_t buf_iova __rte_aligned(sizeof(rte_iova_t));\n+\t\t/**\n+\t\t * Reserved for dynamic field in builds where physical address\n+\t\t * field is invalid.\n+\t\t */\n+\t\tuint64_t dynfield2;\n+\t};\n \n \t/* next 8 bytes are initialised on RX descriptor rearm */\n \tRTE_MARKER64 rearm_data;\ndiff --git a/lib/mbuf/rte_mbuf_dyn.c b/lib/mbuf/rte_mbuf_dyn.c\nindex 4ae79383b5..0813d5fb34 100644\n--- a/lib/mbuf/rte_mbuf_dyn.c\n+++ b/lib/mbuf/rte_mbuf_dyn.c\n@@ -128,6 +128,8 @@ init_shared_mem(void)\n \t\t */\n \t\tmemset(shm, 0, sizeof(*shm));\n \t\tmark_free(dynfield1);\n+\t\tif (rte_is_iova_as_va_build())\n+\t\t\tmark_free(dynfield2);\n \n \t\t/* init free_flags */\n \t\tfor (mask = RTE_MBUF_F_FIRST_FREE; mask <= RTE_MBUF_F_LAST_FREE; mask <<= 1)\n", "prefixes": [ "v1", "2/4" ] }{ "id": 115605, "url": "