Message ID | 20170501064018.5796-1-jerin.jacob@caviumnetworks.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Ferruh Yigit |
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id B60BE374F; Mon, 1 May 2017 08:41:03 +0200 (CEST) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0064.outbound.protection.outlook.com [104.47.36.64]) by dpdk.org (Postfix) with ESMTP id 1A4472F42 for <dev@dpdk.org>; Mon, 1 May 2017 08:41:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=LvfsH6NRoXWfraUBz7CmRh9KNmroPR5fSOd7REky4aE=; b=mxzDuDK/r3la2a5X1vagzGmdlevcj/N8ScmY3MI/q6J55V8w60snTCX4J1AP0ccUSm6z2vv5OPEx70RGU6w96gkr8DXGQH/YqUcLdBsjX9nraeNxQYW2o47+hsldOikM7tB23zrb8Pd3cNDmCkTXrqbh+qg7Qi/FYQSMCOlH2hg= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from jerin.domain.name (171.76.125.157) by BN3PR0701MB1719.namprd07.prod.outlook.com (10.163.39.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Mon, 1 May 2017 06:40:56 +0000 From: Jerin Jacob <jerin.jacob@caviumnetworks.com> To: dev@dpdk.org Cc: thomas@monjalon.net, olivier.matz@6wind.com, bruce.richardson@intel.com, Jerin Jacob <jerin.jacob@caviumnetworks.com> Date: Mon, 1 May 2017 12:10:18 +0530 Message-Id: <20170501064018.5796-1-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.12.2 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [171.76.125.157] X-ClientProxiedBy: MA1PR01CA0102.INDPRD01.PROD.OUTLOOK.COM (10.174.56.146) To BN3PR0701MB1719.namprd07.prod.outlook.com (10.163.39.18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6f430e21-f22e-48c9-c4bf-08d4905d06a0 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:BN3PR0701MB1719; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 3:kqXBZNFUTAUvsrFRpmwDQhFKO3Q+73YU8Czgi8gRLnWceB7BcniTyzOFormPW6cIjTbPJf1juvpBdc5Xet4A4X17p+HEslfp4+ARUfyS+dMpzFSRPhy2y1KQ9ZP4iUhhz2YQtifdzvO1IQKVLMC1mH/p1aUYdPKNJlrVAPv/IwYmxm/+TTtaEiecJFOwXqJyLaq1rKUr5ITMLNnx7SDszxt7vLE0s2OwjodYAH8J4zV554s8vyGNO9cGzHcNJkVjq3Pvxd/RqmGB/FkGGv+kuOipI1tVDFFx8n7gUVVYma5Xgq6W3EA18QJHk1X5X6hw3zAR6ZvyzIoYS7K/Pf2D1g==; 25:LwQ/ybxVCocYueavc0fvTV7w2FVaq8IrDo5+lETLoa36LoBUTBZiKfuQab+ZSkXC6Vs4tJSaMxsSM5mvOMJybWrwM6xe7vmFkw0p7PvwmARB/nB5djc5V3QzRGJr2zg8uQdmYkpw9nnYQGJvqEyXfbnDqSaHObLho+ecJhNLEhwMAdZDDIfdjgZ8a6koH4LwtW8ImVnNAZj8hF1ttOzxMRDghpI1S8DqweLh5IoVXEQREp5xP0+X3CzcMLIEpHJq68rcN0bX9zjVdiPGbzGUs3Rnb5QBk7luryyxyexMq0Uor29vYkUouvj+OqVZLN4xCavPxpw2VglDIXvDcNR/+fS5NB1eq1YT+Bt4QZ9VlIJGoDoERLeK3oexG0/sQkEFnNHt3qjsuHvDh1uSuVAoEzkBeaqZgQ6B3nOnqG1Jr46RVgx2AixAQK/o/1XU01sLrvY5p9gqEv+zEBkd9dmVaA== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 31:lGzLtYBFqwTYcjtVEB28vjmMCIHNLpLLldA+//MpVnpXZ7atAr2XMB9b5OrnpW4Ohf0I2etm2fc10fAi+74DcYyVD2BfzK41evO6syVI5DhI1bGJyle2UgHKjX0W8INQmhQ0HW5Bv4hue7tumZG3CSM5FbpcuW9Sxp3ppCMwUihtp54I+tcz3wnPvkWBAD69mwX8XIExBaYufqQB2FE9sX6103McgaNRe4s7gD1mt/E=; 20:SMnpnW5bK0nNgxmCyTJYwDDTCdVsQXV9MWt0XByDgaVM+u2OIcIdOcia56bYI1LBrUjdPq+SjuH8o3BXg41SSQTY2sKMUrWMeg0INQqwwD/Fzwrewc5TIEBeRO2t9Gi5OmEr1ekUIwRPOxGuBsIArrtgoldD0xJApFoiGihYQxQDJinRmEoYhygnx00FPZ101e/TPEfm3INywNFNj+lqkM3ay1us5GmUS2u3ejjJ9B1j9Q9KknLvRpMetzwY8Q1Uy4I+c4EQ+AkA+yPIM5voZjaXgmqeqRqj5aHZ9WC08tjtafNjcKVnttbzxi4dlkywQteV4PZGZG1czRstYrwvUGY/jIKxwo+ru9VT9fT3Svrmsf8TdFpTaQIl8eUorOORyxd0AuPZhV/LiO/xO8c3i/bMJD4VygC/TNJh+AODQUSCLFH7T52qe1/pEa3ofoIsBbrvgMuTP25qCGEkn6ZlX8SBCEFaJDP+Uzre0qDQ4qA4EGxnsPjddbq8d7z68YvtGM4L43yQ1XqfHxWudcrtjmJkz8UWK94DfF1+zKngSvDtMGY4pi5wmVvfIXHPLDC2SXy1FTW7dMe8WYP8BGDpi7CqHsiytjtwmq1Y9NGvgEA= X-Microsoft-Antispam-PRVS: <BN3PR0701MB17197D380F19865853E60654E3140@BN3PR0701MB1719.namprd07.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(6041248)(20161123560025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123558100)(6072148); SRVR:BN3PR0701MB1719; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1719; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 4:nHm+Kk5ZVbYNIE4oll59/2CFXUVNTqAZeNHAE4Pzj7tNAOv8j3BugYf2saeGBppMtFY2odq3gjXWfR7RxpnDXsJ4Zw6fZKkFk+bRCqiO6HXhOWzTOdTUE4GNQhLI3fQx3wHjug2rn/j/SFppQU+o784y0AAsxdRUqRO1P9JyURtz3sVSduswF5OWpburbw6IghhLAIW3XDexR+f5lb3YUGl47cWoVI7gmaeXq3wHjsFzLU+4IW4h1ZeYAt4XG9GELA00j7ncWVa18yB4Wmr/WvdxFF0J4ihBupH4bjElH0eBhJAL/Xk8aseY+B494kORQKokIkoYFPAOYu+EH+KDHsUKz4GGbTVk5mNiLu/7zWhUkecJyAzY01qpS9AWJS88KnFy5uHMw9YXSCI/gko1yfAeNrbB8uFp2k0nsHsd7fNiKbuJF1QUS8lEvxFuAZDljgAftVaxv68Cg7+rhRfuDsypgLCiFDE3UEzvFm8cP2qUy5Ui1+V/vFpHZydpPmsfAv0vlurfsmpYAMQLgtyx/zq0l/X5q/T4ht+IDbczgaeFLTHRg6cjQKu6NxBDgC1VgpQJPvPsOiISgR7JYiZy276uw0QW1DUSduAzLn+nWjR1vcBieUbRWgpceqlKln56y9XBDo+NE7rahedwutU8bGXBm23CfFKjWLpuNFcv5nmGmhUNueaxWZKNH1eMkcJ8O0xD1IZNTEBLzSnnipbNVbNy1WBS4xXRFrEz0LVT3xkqNeN8oSK6BwEu4fPOaSHQB1uR8ks9QW5MuTqMS+88fg== X-Forefront-PRVS: 02945962BD X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39450400003)(39850400002)(39400400002)(39410400002)(39840400002)(53416004)(2906002)(2361001)(6506006)(33646002)(6486002)(2351001)(50986999)(38730400002)(48376002)(6666003)(6916009)(42882006)(966004)(6512007)(6306002)(53936002)(50226002)(42186005)(25786009)(7736002)(305945005)(3846002)(6116002)(1076002)(189998001)(110136004)(50466002)(5003940100001)(53376002)(5660300001)(8676002)(478600001)(81166006)(66066001)(47776003)(4326008)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1719; H:jerin.domain.name; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0701MB1719; 23:WKViAx6MFpkWTST5BmVGiUqhnAOVzrPO2wYSM1D?= gh3OtdfpXOX7fd/NZOCa/v3loHJKaF5tZJFDZ5+vp0EgIx+65EUzUuJGJCCkOJH3/s1V7wOK/qVf8pm5neEq09geaO2bB2G6uazPPbxcVhDgk7xRU4mKdGH4uuBQainzH1jDFtWZri71AihIvVVozWN/eBji3DDeQ42uIsaEw3PBGzgRi5CEZT/hA0VNca5slvoipk03h9UHqQzVFFHnHG+X8WmyrMg4hdcpvoeYcxD+Ch93MBeQeTdKp9HTY414AKv40jkSsNN89QfSy+iyDiGZ53c3A+AMCL3kBZdyeqsbT0Ig/aE/qRZMqoO0VebZgTl1+78DfAPlUK2pDvlmP9nCLn8ymOxGc2ieXV+BKVU6KB3uQbQqMdl4VKnqQMhUu3ZRyFqeSeRlUY5j17lbkjz+Gus23lghrKK5lNgVEhpNAFzi562gj74dLp4CEmuCUGKVtL1xxI1oPieI8Un8l1GSOOEuQAHuVN3i6g994RV8l4C6GPnUEWyMVPFcIlTgGflktzGMONah1nPiNEB7BkKQkudmk2m5PvcZFuigsNh4WCx1EAZf3AGhlUTKhaGLU65vcwAGvdz7dqJsUpWoE0n2cocEww7q+azA1FJJIjhFFZOlMczYXuKADl++pP4b6CrOJdiyd0snB50HUuMHsqs4FoRTh189ZCFnez92/dbzGtu+/+VBNHydwrk8wEhCtTAmfV0DrYGDWX+wXjmkcdOq8qbZOrMBX9KaeyNDitiN5uYqQ+8ErdKlAmRDFdvPx/ksGAoCxoH0efCMB87SaD6qKnvoQwQDS0mvp72Bs37CeDU2tHMaYNkHpappmht2krHYbuTfE0pMuZCZjMINBBGH6JiHIyXHOkoJHXIV563Bt5XLV0LSTj/34Wk34MAl5YzCv+2NO6MkR1VR0zpyC5qfFMJumK5Sdi55ayeRj2ueigDAIZdCtReomHeVjbalNq1SwBcv7Dj4bCBRwTTYcV34EpRi3Nspz1A18SS6WcRwUDU29+Y4lLwd8qj4e25+J67pJYfiwe6a/sPMOrg+B/44ewyRXLeZN7Bq4gkGKJeTq90cA1EF47mLf09WSGjhhsEo= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 6:7CP0I1CyolzG//ucxwtCwuN+atlzMBgHVRUdbbGTu6ifwUuREYNdhzGSRfb/Q/KdK3FY/9nhcEAAlCwXXjPG7f8eRtq7JiiYndDc7B9M8UbjHNh/BI9ZGNoaebXfNbcRL30i1FEs5Cxd33fD2CRFDfJOe0ZJ+P1vB+83xQ27KrmrORMRqPoRAm08vkl2azjpveXVS2TNisOs0PEhXh0b/LG+D/10RSLy0s+T0a/mBtrffpq4EA2RhnNv66PAe6Zj4JgoD95C2QwAQs6/ebLZsd/Ngf+2zoUf4QMCXkWVXlIdQ+fdphPDklPNLF+q0r7o2oA6Qts19+XivDI+JKDCQjMsWZMrNLGgd81fsDYJ4BtjqlFCRxWLAqz9lC8zq/Tja0yQZxivYv17aqAjoq2qEf73QWPioDWgOSAv8tIpIqhztnAq/tex4B4teuA34D+pu5CqlopAb28LwrHNPli6JI1drE/dOj4obF5RYqWMPAHo0svKuzV26S9quyOQNU4aw4YCTBewQWO387cBwblPuw==; 5:BRYcZwH8emXIYGWXhC3UyGkgLTz1HTKprOiv2b2GSH9FHQ9pdJFILPqhmZjLnbPEQnseML6NgHx584tJRb1gaaK1uZPRL+tljNytgkVQRvCO5/mpyO15c1+qlwJdAgrHDf1xL3KMMyxitB0LgFy7tg==; 24:EMQOqRHq4i209GKJw+klETeZ5r+z4hwjQfUgTb0Y6fGxq+WFz8ZNly7lSrsKJJMt+SqgAfrOrAEpkWHJFLYkVj0OE5hUApYxywy52NCbU4o= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 7:w4fczI7+GLyxn8zUxYN6IgyML6df5Qdq18jtFlckfzi5IjctXbXOg1nJHagqf2UUsyJaTXVHNCIrjH2naMSjIXbHrCTwov89SHE8TMT/zTQr4SqJ3fBBDXpL6M97JHZ0YusBXUp+XcQhTOzkX0GxU0KeBUjrqeoVBQxggXYQRkbksGTRJN0Bqhu2KqPovvpOQ2HH82gNAI7OWdguYE2CVqGnS9kQKr4eELHVA5czCcSysBW+GEIWvq0UsD07D0ozbaBlsvwCpQ3McfzAf0TLg/+Il5ZFLIeHn9AUn4V2luX7R0D3HLA/KpR5bGJXasP1qXOM54qDv2sfmqdRHDdLhA== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 May 2017 06:40:56.2545 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1719 Subject: [dpdk-dev] [PATCH] net/thunderx: add compile-time checks X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Checks
Context | Check | Description |
---|---|---|
ci/checkpatch | success | coding style OK |
ci/Intel-compilation | success | Compilation OK |
Commit Message
Jerin Jacob
May 1, 2017, 6:40 a.m. UTC
The thunderx PMD is sensitive to the layout of the mbuf on
the RX path. Add in some compile-time checks to make sure the mbuf layout
assumptions are valid, and to provide hints to anyone changing the mbuf
where things may need to be updated.
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
---
- As previously discussed*, add some compile time checks to the pmds to
help sanity-check their dependencies on the mbuf layout.
* http://dpdk.org/ml/archives/dev/2017-April/064988.html
- Targeted for v17.08
---
drivers/net/thunderx/nicvf_ethdev.c | 7 +++++++
1 file changed, 7 insertions(+)
Comments
On 5/1/2017 7:40 AM, Jerin Jacob wrote: > The thunderx PMD is sensitive to the layout of the mbuf on > the RX path. Add in some compile-time checks to make sure the mbuf layout > assumptions are valid, and to provide hints to anyone changing the mbuf > where things may need to be updated. > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Applied to dpdk-next-net/master, thanks.
diff --git a/drivers/net/thunderx/nicvf_ethdev.c b/drivers/net/thunderx/nicvf_ethdev.c index e4910c9b3..ddcfabaf7 100644 --- a/drivers/net/thunderx/nicvf_ethdev.c +++ b/drivers/net/thunderx/nicvf_ethdev.c @@ -1239,6 +1239,13 @@ nicvf_rxq_mbuf_setup(struct nicvf_rxq *rxq) struct rte_mbuf mb_def; RTE_BUILD_BUG_ON(sizeof(union mbuf_initializer) != 8); + RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, data_off) % 8 != 0); + RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, refcnt) - + offsetof(struct rte_mbuf, data_off) != 2); + RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, nb_segs) - + offsetof(struct rte_mbuf, data_off) != 4); + RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, port) - + offsetof(struct rte_mbuf, data_off) != 6); mb_def.nb_segs = 1; mb_def.data_off = RTE_PKTMBUF_HEADROOM; mb_def.port = rxq->port_id;