[dpdk-dev,v2,4/4] cache/slow-path: reduce cache align requirement for 128-byte cache targets
Message ID | 1449765378-29563-5-git-send-email-jerin.jacob@caviumnetworks.com (mailing list archive) |
---|---|
State | Superseded, archived |
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 403F68E85; Thu, 10 Dec 2015 17:37:21 +0100 (CET) Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0058.outbound.protection.outlook.com [207.46.100.58]) by dpdk.org (Postfix) with ESMTP id A50728E74 for <dev@dpdk.org>; Thu, 10 Dec 2015 17:37:19 +0100 (CET) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@caviumnetworks.com; Received: from localhost.localdomain.localdomain (122.166.129.221) by BLUPR0701MB1715.namprd07.prod.outlook.com (10.163.85.141) with Microsoft SMTP Server (TLS) id 15.1.337.19; Thu, 10 Dec 2015 16:37:15 +0000 From: Jerin Jacob <jerin.jacob@caviumnetworks.com> To: <dev@dpdk.org> Date: Thu, 10 Dec 2015 22:06:18 +0530 Message-ID: <1449765378-29563-5-git-send-email-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1449765378-29563-1-git-send-email-jerin.jacob@caviumnetworks.com> References: <1449417564-29600-1-git-send-email-jerin.jacob@caviumnetworks.com> <1449765378-29563-1-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [122.166.129.221] X-ClientProxiedBy: MAXPR01CA0058.INDPRD01.PROD.OUTLOOK.COM (25.164.146.158) To BLUPR0701MB1715.namprd07.prod.outlook.com (25.163.85.141) X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1715; 2:mDu8WWUFfd1/5s/ZR085Dp77fd5bQLMQGtiVG7XtLKEaSqFt+JqyPXN0WW0JG8WkqVhi30YzTj2bwvlsFNdCKKuuHZ1yRZZlKlf4+zGGu2YMl1Tt0qqmCn+/7HVt8HiUtxUbzqNVS/lWpOayNsyAWw==; 3:VsuP4wcGvKoaENlgI6TJZjm2FMI6G+9YH44Wcl4CTRnQus2/PB2AWOhxX6MTe74A3BtqEAPxF+rC+ODSgpTimheK9YHa4bAaN8tZ3ESuv2cYwwTDGC7drQEilmrpsyKh; 25:4Mz2aflGDg9t90KelQAEbMM6sBgmmdIeHugsuyuJJ0XH+LU52TN2XcqeX16R7UvanSe+IVAOlUqyVXGsKHDRSN/FYBFJ6CsdkHwoenbxgNu8PSc3Zd2f6njRYz46eMTHzMXe6dDfLHKishRNUzu3SXAScTGpiNtLwf1hGUFatrw59RHArv7kENvusxHARs44YYZTOGMk2stlSlz803Sn3eFxULkzly2e7i25+QLQzUzPYPBYXGVIO6ktthqwSxg7+wDwyZDXkZIYJLfnFJVmJw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0701MB1715; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1715; 20:ptULaMzgEbgCDr68wxHl/MCPpv24NNyOZOkMYVHpXR7IfIkGjOCc1Heon5Xr2sNnhefq+f3+hkdigyuMEcPBJaSD6mxKH6wI2Ta/yhddVAekwidYAQ2G5qLhn2mMfX863Qb0K7uJ1mjFbIa9a4pG1zfB9R55PHINuMJn4SigVaV+pw0LA9pcsXKrs3edqCFNhZmqcelnB/huv30epeTHFpPGn6R87inD5llikFA6jRxHN9+mgwYF6kwbOjhSK5xOUWWthMPqiN3ALi95TxRslL9hmIUa5ZuSXX+JlVCWrYo/bO+3jEPiMF+3iF9VfLmdxMye5sSj+CGwvp6Dx94WWRHFTa9IIwymZcIClQiYNoE+Sq5Sf4UXM+We9w0CtQTdaOEwp74jr7jSnLc5/4TpV2Cug9KteJ7vGBzZ3tIeUe4AcB7NcTwVUpDFj5OC2VzkzMts/8ltJXHrZgg+ClHBxMIupJkzvaiPy3iXN9yZTxeDEa99Lvc+slLI/at0fruokDCtJLf00N0iGBYvoXCMzKV7Slg85kj9A2seIqfnMijQezaKo1EGZzhXYIcTUl6HBkMcpUtjhcYkBhFfFBsK8LBcCQECFO/u5HE/Ogc6GVk= X-Microsoft-Antispam-PRVS: <BLUPR0701MB17154AE957D44245CD84694A8CE90@BLUPR0701MB1715.namprd07.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:(236414709691187); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(520078)(8121501046)(5005006)(10201501046)(3002001); SRVR:BLUPR0701MB1715; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0701MB1715; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1715; 4:T7/OXHjeMObI5ozx3DRc2FNeFUhNUt+ppmvWLiU3sMPam29nmVebpTbhv6/l+b1lw/AyzsWqHdtIFX++Dq4aqwAyn7PbdWyT18krBS6QEkieGwb3BMKmjPLEQtU6FHtxxgb4NrIZ7fnX9zgBLLwQhXrOHjd68OzQK49iZwU+2BCVqXEMwaU7qf5AP1dT0fpo2tZNOUmQOp9Yz6WSH3HdNqPVvwOn6siZqvEYR+9XWMn9+NhqRLoN3+nf5SRnNkyzdNDqUQjBcSyT9kd8/G62mq0SbTAWUYGNO2Dmty4EZ+LmUy2mAyZB5faKi5vwLwi4FFxYMor5fStXSroB9urys1HX3miIJd9k5UNtKoV+tzEX/4lBUGVsExGzJ7Oae/+KmHtOwGZhm/Ih1yenuT9SNRGc/YJ3a1/Z1t/9eDlqSqwWXarMz/RrIULCIKm53DWS X-Forefront-PRVS: 078693968A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(6069001)(189002)(199003)(97736004)(229853001)(5004730100002)(40100003)(586003)(5003940100001)(1096002)(105586002)(6116002)(5008740100001)(2950100001)(3846002)(4001430100002)(36756003)(189998001)(106356001)(86362001)(122386002)(107886002)(77096005)(92566002)(42186005)(2351001)(33646002)(48376002)(50226001)(66066001)(81156007)(76176999)(47776003)(5001960100002)(19580395003)(50986999)(19580405001)(110136002)(101416001)(87976001)(50466002); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB1715; H:localhost.localdomain.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: caviumnetworks.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1715; 23:EpYP2KwzXplZ5Bq9lA/j2Z9QZUAEB4j15YaNRaP?= =?us-ascii?Q?wGhsuLZTUkD4/k93hYb0oHU67D+WHJNUJb7c/U6hpAic8X/24qUczZMfMByl?= =?us-ascii?Q?a6X5EkNJAWljY793GhQHNVN2KZIUvTQsBGorqHuDN6bAKfgnJ80q5ZMWZ3ON?= =?us-ascii?Q?GSvMPzix1VHhSExofUaic+ppeJKTebo9xW9od/dF1arhyllNdHaHqUitYzQq?= =?us-ascii?Q?+WyUL+vydSNLfSfzBtq7lDE3MZmMceto4jvD3avwCTycPBagqe/EtSYHEWxe?= =?us-ascii?Q?+Trc2oVYwBpfYZsu+ugRdhK3mfKRKXv8kYnUY+3OX/LSwR/43zp0P5D5BlLk?= =?us-ascii?Q?NxZq/DACKwqxHC846O8nTXDVV/CiY+kytzdaiRiPA7RxVO2DHAqg+xRwRBXZ?= =?us-ascii?Q?GpWj+8m6K9N8Cy3ECZ53oN6DoSOtHXF2Rz8yHw97anb8EHzgL0hL4GQ9cpUi?= =?us-ascii?Q?0190VdqDKfvnJDWF+QhILwoJ8SCXjE9Xf3ndDptyrWAP9Eic+YRJcSUzmWne?= =?us-ascii?Q?X1L6HLUvjrr5WJ0xtBfncwx/fCRcimHrUvW1B2FQIwwWdg3r7S1xQXeEGsAB?= =?us-ascii?Q?Smt07CyOu8ht9Mbw8KRD5ffyO2L2CiksYdQGHi/kz2+PQHTR9KnMpcDYF7bk?= =?us-ascii?Q?GSBO2iINuzdGJ7fQtFNPvEnsgOKj1/HAwm9TzdszFde0lVSuw57mCIurK4Ix?= =?us-ascii?Q?s9mSxGwof6r66H/eHjgze+9O95vhOr4Z08/GJ2trsPT5n3Acuks/N+nfQ3U4?= =?us-ascii?Q?5F/FHKWHCtTaofvfdLBdy3070UzA3FCTRkH8sGmSYjYxz8eQEIX83ckTiR98?= =?us-ascii?Q?0KbudvoY4jFoPMrilUol3Ob17FRhF92sY0htulO0y9ZJVLUMQRetItHgeSHH?= =?us-ascii?Q?15CqbGVtR3K1bhvEYEdptyiX/d5QoHVJBXktgjZSLZPAgYjf/5Hk8Gnv7jHY?= =?us-ascii?Q?lX63CcA0Q4dq+jdpAWDmn274Brb2XnY0jJ1iA7ekgbGCoHtRnLdV9u976P7Y?= =?us-ascii?Q?2AdQoY4QvwMjz3MB8sm9J1Uk45ftV4vet/OJzMzfESpEF6HYuLGxgOop17Qm?= =?us-ascii?Q?fqiIivJwL7cdcDNfiAd6n3h8MEUcH/W8c9SqTjGVIKQLqW2XOGkyosgHlfJY?= =?us-ascii?Q?VbDEcRoEqAMQ=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1715; 5:eKgBRIyGDwezGWznS+OXDZNPM9e9QpMJnwhZlGBhzJSdGu/gRBbSOqNrqH11bT36rkUENtg0cmGSl141RynvHOqmCSLeKCztLQfZrFn07g3lCklzFCBG6GvrPf9XL7tDImgtBxRFfnm8d9R4tJvXQw==; 24:HOm6NthCSIaFcq3ymSn1aw5IR0ZuKIFk2j2MyBiaNiUtXsWK9vhB4ehc1fLf0IWVJyUQo3LYM78gVyY/2sLRqQ96Z9Q1v0W5bsmR4ngI0hE= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Dec 2015 16:37:15.8121 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1715 Subject: [dpdk-dev] [PATCH v2 4/4] cache/slow-path: reduce cache align requirement for 128-byte cache targets X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <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> |
Commit Message
Jerin Jacob
Dec. 10, 2015, 4:36 p.m. UTC
slow-path data structures need not be 128-byte cache aligned.
Reduce the alignment to 64-byte to save the memory.
No behavior change for 64-byte cache aligned systems as minimum
cache line size as 64.
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
---
lib/librte_ether/rte_ethdev.h | 4 ++--
lib/librte_mempool/rte_mempool.h | 2 +-
lib/librte_ring/rte_ring.h | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
Comments
Hi Jerin, > -----Original Message----- > From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com] > Sent: Thursday, December 10, 2015 4:36 PM > To: dev@dpdk.org > Cc: thomas.monjalon@6wind.com; Ananyev, Konstantin; viktorin@rehivetech.com; jianbo.liu@linaro.org; Jerin Jacob > Subject: [dpdk-dev] [PATCH v2 4/4] cache/slow-path: reduce cache align requirement for 128-byte cache targets > > slow-path data structures need not be 128-byte cache aligned. > Reduce the alignment to 64-byte to save the memory. > > No behavior change for 64-byte cache aligned systems as minimum > cache line size as 64. > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > --- > lib/librte_ether/rte_ethdev.h | 4 ++-- > lib/librte_mempool/rte_mempool.h | 2 +- > lib/librte_ring/rte_ring.h | 2 +- > 3 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h > index bada8ad..4dbf73b 100644 > --- a/lib/librte_ether/rte_ethdev.h > +++ b/lib/librte_ether/rte_ethdev.h > @@ -863,7 +863,7 @@ struct rte_eth_rxq_info { > struct rte_eth_rxconf conf; /**< queue config parameters. */ > uint8_t scattered_rx; /**< scattered packets RX supported. */ > uint16_t nb_desc; /**< configured number of RXDs. */ > -} __rte_cache_aligned; > +} __rte_cache_min_aligned; > > /** > * Ethernet device TX queue information structure. > @@ -872,7 +872,7 @@ struct rte_eth_rxq_info { > struct rte_eth_txq_info { > struct rte_eth_txconf conf; /**< queue config parameters. */ > uint16_t nb_desc; /**< configured number of TXDs. */ > -} __rte_cache_aligned; > +} __rte_cache_min_aligned; > > /** Maximum name length for extended statistics counters */ > #define RTE_ETH_XSTATS_NAME_SIZE 64 > diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h > index 6e2390a..8e5d10c 100644 > --- a/lib/librte_mempool/rte_mempool.h > +++ b/lib/librte_mempool/rte_mempool.h > @@ -92,7 +92,7 @@ struct rte_mempool_debug_stats { > uint64_t get_success_objs; /**< Objects successfully allocated. */ > uint64_t get_fail_bulk; /**< Failed allocation number. */ > uint64_t get_fail_objs; /**< Objects that failed to be allocated. */ > -} __rte_cache_aligned; > +} __rte_cache_min_aligned; > #endif > > #if RTE_MEMPOOL_CACHE_MAX_SIZE > 0 > diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h > index de036ce..33166aa 100644 > --- a/lib/librte_ring/rte_ring.h > +++ b/lib/librte_ring/rte_ring.h > @@ -123,7 +123,7 @@ struct rte_ring_debug_stats { > uint64_t deq_success_objs; /**< Objects successfully dequeued. */ > uint64_t deq_fail_bulk; /**< Failed dequeues number. */ > uint64_t deq_fail_objs; /**< Objects that failed to be dequeued. */ > -} __rte_cache_aligned; > +} __rte_cache_min_aligned; > #endif I think we better keep both struct rte_ring_debug_stats and rte_mempool_debug_stats as __rte_cache_aligned. Both are on a per core basis and can be used at run-time (when RTE_LIBRTE_RING_DEBUG/RTE_LIBRTE_MEMPOOL_DEBUG=y), and not supposed to be shared by different cores. All other things in the series look good to me. BTW, by some reason I can't find that series in the patchworks. Konstantin > > #define RTE_RING_NAMESIZE 32 /**< The maximum length of a ring name. */ > -- > 2.1.0
2015-12-11 12:55, Ananyev, Konstantin:
> BTW, by some reason I can't find that series in the patchworks.
Because it is deferred:
http://dpdk.org/dev/patchwork/project/dpdk/list/?state=10
It's too late to do this change in 2.2.
On Fri, Dec 11, 2015 at 12:55:57PM +0000, Ananyev, Konstantin wrote: > Hi Jerin, > > > -----Original Message----- > > From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com] > > Sent: Thursday, December 10, 2015 4:36 PM > > To: dev@dpdk.org > > Cc: thomas.monjalon@6wind.com; Ananyev, Konstantin; viktorin@rehivetech.com; jianbo.liu@linaro.org; Jerin Jacob > > Subject: [dpdk-dev] [PATCH v2 4/4] cache/slow-path: reduce cache align requirement for 128-byte cache targets > > > > slow-path data structures need not be 128-byte cache aligned. > > Reduce the alignment to 64-byte to save the memory. > > > > No behavior change for 64-byte cache aligned systems as minimum > > cache line size as 64. > > > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > > --- > > lib/librte_ether/rte_ethdev.h | 4 ++-- > > lib/librte_mempool/rte_mempool.h | 2 +- > > lib/librte_ring/rte_ring.h | 2 +- > > 3 files changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h > > index bada8ad..4dbf73b 100644 > > --- a/lib/librte_ether/rte_ethdev.h > > +++ b/lib/librte_ether/rte_ethdev.h > > @@ -863,7 +863,7 @@ struct rte_eth_rxq_info { > > struct rte_eth_rxconf conf; /**< queue config parameters. */ > > uint8_t scattered_rx; /**< scattered packets RX supported. */ > > uint16_t nb_desc; /**< configured number of RXDs. */ > > -} __rte_cache_aligned; > > +} __rte_cache_min_aligned; > > > > /** > > * Ethernet device TX queue information structure. > > @@ -872,7 +872,7 @@ struct rte_eth_rxq_info { > > struct rte_eth_txq_info { > > struct rte_eth_txconf conf; /**< queue config parameters. */ > > uint16_t nb_desc; /**< configured number of TXDs. */ > > -} __rte_cache_aligned; > > +} __rte_cache_min_aligned; > > > > /** Maximum name length for extended statistics counters */ > > #define RTE_ETH_XSTATS_NAME_SIZE 64 > > diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h > > index 6e2390a..8e5d10c 100644 > > --- a/lib/librte_mempool/rte_mempool.h > > +++ b/lib/librte_mempool/rte_mempool.h > > @@ -92,7 +92,7 @@ struct rte_mempool_debug_stats { > > uint64_t get_success_objs; /**< Objects successfully allocated. */ > > uint64_t get_fail_bulk; /**< Failed allocation number. */ > > uint64_t get_fail_objs; /**< Objects that failed to be allocated. */ > > -} __rte_cache_aligned; > > +} __rte_cache_min_aligned; > > #endif > > > > #if RTE_MEMPOOL_CACHE_MAX_SIZE > 0 > > diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h > > index de036ce..33166aa 100644 > > --- a/lib/librte_ring/rte_ring.h > > +++ b/lib/librte_ring/rte_ring.h > > @@ -123,7 +123,7 @@ struct rte_ring_debug_stats { > > uint64_t deq_success_objs; /**< Objects successfully dequeued. */ > > uint64_t deq_fail_bulk; /**< Failed dequeues number. */ > > uint64_t deq_fail_objs; /**< Objects that failed to be dequeued. */ > > -} __rte_cache_aligned; > > +} __rte_cache_min_aligned; > > #endif > > I think we better keep both struct rte_ring_debug_stats and rte_mempool_debug_stats > as __rte_cache_aligned. > Both are on a per core basis and can be used at run-time > (when RTE_LIBRTE_RING_DEBUG/RTE_LIBRTE_MEMPOOL_DEBUG=y), > and not supposed to be shared by different cores. > All other things in the series look good to me. OK, I will fix the alignment of rte_ring_debug_stats and rte_mempool_debug_stats and send the next revision with your ACK. Jerin > BTW, by some reason I can't find that series in the patchworks. > Konstantin > > > > > > #define RTE_RING_NAMESIZE 32 /**< The maximum length of a ring name. */ > > -- > > 2.1.0 >
> > > > I think we better keep both struct rte_ring_debug_stats and rte_mempool_debug_stats > > as __rte_cache_aligned. > > Both are on a per core basis and can be used at run-time > > (when RTE_LIBRTE_RING_DEBUG/RTE_LIBRTE_MEMPOOL_DEBUG=y), > > and not supposed to be shared by different cores. > > All other things in the series look good to me. > > OK, I will fix the alignment of rte_ring_debug_stats and > rte_mempool_debug_stats and send the next revision with your ACK. Works for me. Konstantin
diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index bada8ad..4dbf73b 100644 --- a/lib/librte_ether/rte_ethdev.h +++ b/lib/librte_ether/rte_ethdev.h @@ -863,7 +863,7 @@ struct rte_eth_rxq_info { struct rte_eth_rxconf conf; /**< queue config parameters. */ uint8_t scattered_rx; /**< scattered packets RX supported. */ uint16_t nb_desc; /**< configured number of RXDs. */ -} __rte_cache_aligned; +} __rte_cache_min_aligned; /** * Ethernet device TX queue information structure. @@ -872,7 +872,7 @@ struct rte_eth_rxq_info { struct rte_eth_txq_info { struct rte_eth_txconf conf; /**< queue config parameters. */ uint16_t nb_desc; /**< configured number of TXDs. */ -} __rte_cache_aligned; +} __rte_cache_min_aligned; /** Maximum name length for extended statistics counters */ #define RTE_ETH_XSTATS_NAME_SIZE 64 diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h index 6e2390a..8e5d10c 100644 --- a/lib/librte_mempool/rte_mempool.h +++ b/lib/librte_mempool/rte_mempool.h @@ -92,7 +92,7 @@ struct rte_mempool_debug_stats { uint64_t get_success_objs; /**< Objects successfully allocated. */ uint64_t get_fail_bulk; /**< Failed allocation number. */ uint64_t get_fail_objs; /**< Objects that failed to be allocated. */ -} __rte_cache_aligned; +} __rte_cache_min_aligned; #endif #if RTE_MEMPOOL_CACHE_MAX_SIZE > 0 diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h index de036ce..33166aa 100644 --- a/lib/librte_ring/rte_ring.h +++ b/lib/librte_ring/rte_ring.h @@ -123,7 +123,7 @@ struct rte_ring_debug_stats { uint64_t deq_success_objs; /**< Objects successfully dequeued. */ uint64_t deq_fail_bulk; /**< Failed dequeues number. */ uint64_t deq_fail_objs; /**< Objects that failed to be dequeued. */ -} __rte_cache_aligned; +} __rte_cache_min_aligned; #endif #define RTE_RING_NAMESIZE 32 /**< The maximum length of a ring name. */