DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write
@ 2021-07-16 13:32 David Hunt
  2021-07-20 12:00 ` Thomas Monjalon
  2021-07-20 12:31 ` Thomas Monjalon
  0 siblings, 2 replies; 3+ messages in thread
From: David Hunt @ 2021-07-16 13:32 UTC (permalink / raw)
  To: dev; +Cc: david.hunt, yanx.xia, stable

When the distributor sample app is built as a 32-bit app,
the data buffer passed to find_match_vec can be unaligned,
causing a segmentation fault due to writing a 128-bit value
using _mm_store_si128().  128-bit align the data being
passed in so this does not happen.

Fixes: 775003ad2f96 ("distributor: add new burst-capable library")

Cc: stable@dpdk.org

Signed-off-by: David Hunt <david.hunt@intel.com>
---
 lib/distributor/rte_distributor.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/distributor/rte_distributor.c b/lib/distributor/rte_distributor.c
index 07e385a259..c210cf86bd 100644
--- a/lib/distributor/rte_distributor.c
+++ b/lib/distributor/rte_distributor.c
@@ -478,7 +478,7 @@ rte_distributor_process(struct rte_distributor *d,
 		return 0;
 
 	while (next_idx < num_mbufs) {
-		uint16_t matches[RTE_DIST_BURST_SIZE];
+		uint16_t matches[RTE_DIST_BURST_SIZE] __rte_aligned(128);
 		unsigned int pkts;
 
 		if ((num_mbufs - next_idx) < RTE_DIST_BURST_SIZE)
-- 
2.17.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write
  2021-07-16 13:32 [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write David Hunt
@ 2021-07-20 12:00 ` Thomas Monjalon
  2021-07-20 12:31 ` Thomas Monjalon
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2021-07-20 12:00 UTC (permalink / raw)
  To: David Hunt; +Cc: dev, yanx.xia, stable

16/07/2021 15:32, David Hunt:
> When the distributor sample app is built as a 32-bit app,
> the data buffer passed to find_match_vec can be unaligned,
> causing a segmentation fault due to writing a 128-bit value
> using _mm_store_si128().  128-bit align the data being
> passed in so this does not happen.
> 
> Fixes: 775003ad2f96 ("distributor: add new burst-capable library")
> 
> Cc: stable@dpdk.org
> 
> Signed-off-by: David Hunt <david.hunt@intel.com>

Applied, thanks



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write
  2021-07-16 13:32 [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write David Hunt
  2021-07-20 12:00 ` Thomas Monjalon
@ 2021-07-20 12:31 ` Thomas Monjalon
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2021-07-20 12:31 UTC (permalink / raw)
  To: David Hunt; +Cc: dev, yanx.xia, stable

16/07/2021 15:32, David Hunt:
> When the distributor sample app is built as a 32-bit app,
> the data buffer passed to find_match_vec can be unaligned,
> causing a segmentation fault due to writing a 128-bit value
> using _mm_store_si128().  128-bit align the data being
> passed in so this does not happen.
> 
> Fixes: 775003ad2f96 ("distributor: add new burst-capable library")
> 
> Cc: stable@dpdk.org
> 
> Signed-off-by: David Hunt <david.hunt@intel.com>

Applied, thanks




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-07-20 12:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-16 13:32 [dpdk-dev] [PATCH v1] lib/distributor: fix unaligned 128-bit write David Hunt
2021-07-20 12:00 ` Thomas Monjalon
2021-07-20 12:31 ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).