From: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
To: Bruce Richardson <bruce.richardson@intel.com>,
hgovindh <hariprasad.govindharajan@intel.com>
Cc: Remy Horton <remy.horton@intel.com>,
Marko Kovacevic <marko.kovacevic@intel.com>,
Ori Kam <orika@mellanox.com>,
Pablo de Lara <pablo.de.lara.guarch@intel.com>,
Radu Nicolau <radu.nicolau@intel.com>,
Akhil Goyal <akhil.goyal@nxp.com>,
Tomasz Kantecki <tomasz.kantecki@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>,
"maciej.czekaj@caviumnetworks.com"
<maciej.czekaj@caviumnetworks.com>,
"stable@dpdk.org" <stable@dpdk.org>,
"drc@linux.vnet.ibm.com" <drc@linux.vnet.ibm.com>,
Gavin Hu <gavin.hu@arm.com>
Subject: Re: [dpdk-stable] [dpdk-dev] [PATCH v2] examples/l3fwd: fix unaligned memory access
Date: Thu, 25 Jul 2019 17:14:44 +0000 [thread overview]
Message-ID: <BYAPR18MB2424C2652A73CF0028E39FFCC8C10@BYAPR18MB2424.namprd18.prod.outlook.com> (raw)
In-Reply-To: <20190725164600.GA1621@bricha3-MOBL.ger.corp.intel.com>
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Bruce Richardson
> Sent: Thursday, July 25, 2019 10:16 PM
> To: hgovindh <hariprasad.govindharajan@intel.com>
> Cc: Remy Horton <remy.horton@intel.com>; Marko Kovacevic
> <marko.kovacevic@intel.com>; Ori Kam <orika@mellanox.com>; Pablo de
> Lara <pablo.de.lara.guarch@intel.com>; Radu Nicolau
> <radu.nicolau@intel.com>; Akhil Goyal <akhil.goyal@nxp.com>; Tomasz
> Kantecki <tomasz.kantecki@intel.com>; dev@dpdk.org;
> maciej.czekaj@caviumnetworks.com; stable@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v2] examples/l3fwd: fix unaligned memory
> access
>
> On Thu, Jul 25, 2019 at 05:29:03PM +0100, hgovindh wrote:
> > Fix unaligned memory access when reading IPv6 header which leads to
> > segmentation fault by changing aligned memory read to unaligned memory
> > read.
> >
> > Bugzilla ID: 279
> > Fixes: 64d3955de1de ("examples/l3fwd: fix ARM build")
> > Cc: maciej.czekaj@caviumnetworks.com
> > Cc: stable@dpdk.org
> > Signed-off-by: hgovindh <hariprasad.govindharajan@intel.com>
> > ---
> > V2: Added functions which will do unaligned load based on the
> > underlying architecture
> > ---
> > ---
> > examples/l3fwd/l3fwd_em.c | 26 ++++++++++++++++++++++++--
> > 1 file changed, 24 insertions(+), 2 deletions(-)
> >
> > diff --git a/examples/l3fwd/l3fwd_em.c b/examples/l3fwd/l3fwd_em.c
> > index fa8f82be6..f2641586b 100644
> > --- a/examples/l3fwd/l3fwd_em.c
> > +++ b/examples/l3fwd/l3fwd_em.c
> > @@ -244,6 +244,29 @@ em_mask_key(void *key, xmm_t mask) #error No
> > vector engine (SSE, NEON, ALTIVEC) available, check your toolchain
> > #endif
> >
> > +#if defined(RTE_MACHINE_CPUFLAG_SSE2) static inline xmm_t
> > +em_load_key(void *key) {
> > + return _mm_loadu_si128((__m128i *)(key)); } #elif
> > +defined(RTE_MACHINE_CPUFLAG_NEON)
> > +static inline xmm_t
> > +em_load_key(void *key)
> > +{
> > + return vld1q_s32((int32_t *)key);
> > +}
> > +#elif defined(RTE_MACHINE_CPUFLAG_ALTIVEC)
> > +static inline xmm_t
> > +em_load_key(void *key)
> > +{
> > + return vec_ld(0, (xmm_t *)(key));
> > +}
Added power pc maintainer
Not sure all architecture need SIMD instructions for access to unaligned memory location.
@hgovindh,
Could you provide exact setup details for reproducing this issue, I can test it on arm64.
Like l3fwd command, Traffic generator traffic pattern
next prev parent reply other threads:[~2019-07-25 17:14 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-24 16:43 [dpdk-stable] [PATCH] " hgovindh
2019-07-25 7:01 ` [dpdk-stable] [dpdk-dev] " Ruifeng Wang (Arm Technology China)
2019-07-25 9:05 ` [dpdk-stable] " Bruce Richardson
2019-07-25 13:27 ` [dpdk-stable] [dpdk-dev] " Aaron Conole
2019-07-25 14:01 ` Burakov, Anatoly
2019-07-25 14:08 ` Govindharajan, Hariprasad
2019-07-25 14:01 ` Lipiec, Herakliusz
2019-07-25 14:23 ` Burakov, Anatoly
2019-07-25 16:29 ` [dpdk-stable] [PATCH v2] " hgovindh
2019-07-25 16:46 ` Bruce Richardson
2019-07-25 17:14 ` Jerin Jacob Kollanukkaran [this message]
2019-07-25 18:56 ` [dpdk-stable] [dpdk-dev] " David Christensen
2019-07-25 22:06 ` David Christensen
2019-07-26 10:58 ` [dpdk-stable] [EXT] " Jerin Jacob Kollanukkaran
2019-07-26 13:27 ` [dpdk-stable] [PATCH v3] " hgovindh
2019-07-26 13:37 ` [dpdk-stable] [dpdk-dev] " Burakov, Anatoly
2019-07-26 13:58 ` [dpdk-stable] [PATCH v4] " hgovindh
2019-07-30 8:50 ` Thomas Monjalon
2019-07-30 9:47 ` Bruce Richardson
2019-07-30 11:03 ` [dpdk-stable] [dpdk-dev] " Jerin Jacob Kollanukkaran
2019-07-30 17:45 ` David Christensen
2019-07-31 1:27 ` Ruifeng Wang (Arm Technology China)
2019-07-30 13:26 ` [dpdk-stable] [PATCH v5] Examples/l3fwd: " Hariprasad Govindharajan
2019-07-30 15:48 ` [dpdk-stable] [dpdk-dev] " Lipiec, Herakliusz
2019-07-30 19:58 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=BYAPR18MB2424C2652A73CF0028E39FFCC8C10@BYAPR18MB2424.namprd18.prod.outlook.com \
--to=jerinj@marvell.com \
--cc=akhil.goyal@nxp.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=drc@linux.vnet.ibm.com \
--cc=gavin.hu@arm.com \
--cc=hariprasad.govindharajan@intel.com \
--cc=maciej.czekaj@caviumnetworks.com \
--cc=marko.kovacevic@intel.com \
--cc=orika@mellanox.com \
--cc=pablo.de.lara.guarch@intel.com \
--cc=radu.nicolau@intel.com \
--cc=remy.horton@intel.com \
--cc=stable@dpdk.org \
--cc=tomasz.kantecki@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).