All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Lu, Wenzhuo" <wenzhuo.lu@intel.com>
To: "Yigit, Ferruh" <ferruh.yigit@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	"Richardson, Bruce" <bruce.richardson@intel.com>
Cc: "stable@dpdk.org" <stable@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v4 1/3] net/iavf: fix segment fault in AVX512
Date: Wed, 14 Apr 2021 01:18:21 +0000	[thread overview]
Message-ID: <DM5PR11MB1787FA220B3A08DA1855BC328C4E9@DM5PR11MB1787.namprd11.prod.outlook.com> (raw)
In-Reply-To: <a12a973a-2e8a-7048-4f8b-4e7bc233ea08@intel.com>

Hi Ferruh,

> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Tuesday, April 13, 2021 8:37 PM
> To: Lu, Wenzhuo <wenzhuo.lu@intel.com>; dev@dpdk.org; Richardson,
> Bruce <bruce.richardson@intel.com>
> Cc: stable@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v4 1/3] net/iavf: fix segment fault in AVX512
> 
> On 4/9/2021 4:01 AM, Wenzhuo Lu wrote:
> > Fix segment fault when failing to get the memory from the pool.
> >
> 
> Can be good to clarify there is no change in the moved code, it is not possible
> to recognize this from patch without using a compare app.
Sure. Will add more description here.

> 
> > Fixes: 31737f2b66fb ("net/iavf: enable AVX512 for legacy Rx")
> > Cc: stable@dpdk.org
> >
> > Reported-by: David Coyle <David.Coyle@intel.com>
> > Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
> > ---
> >   drivers/net/iavf/iavf_rxtx_vec_avx2.c   | 120 +------------------
> >   drivers/net/iavf/iavf_rxtx_vec_avx512.c |   5 +-
> >   drivers/net/iavf/iavf_rxtx_vec_common.h | 203
> > ++++++++++++++++++++++++++++++++
> 
> The common vector code seems moved to 'iavf_rxtx_vec_common.h' but
> that header is included by 'iavf_rxtx_vec_sse.c' too, and the moved function
> has AVX2 code in it.
> Won't this fail to build if the AVX2 is not enabled?
Agree. There may be a compile error. I'll change the ' RTE_ARCH_X86 ' to ' CC_AVX2_SUPPORT ' to make the code only for avx2 and avx512.

> 
> Bruce, is there an easy way to test this, meson detects the AVX2 support
> even I provide c_args march that doesn't have AVX2 support.
> 
> <...>
> 
> > index 46a1873..57b4381 100644
> > --- a/drivers/net/iavf/iavf_rxtx_vec_common.h
> > +++ b/drivers/net/iavf/iavf_rxtx_vec_common.h
> > @@ -11,6 +11,10 @@
> >   #include "iavf.h"
> >   #include "iavf_rxtx.h"
> >
> > +#ifndef __INTEL_COMPILER
> > +#pragma GCC diagnostic ignored "-Wcast-qual"
> > +#endif
> > +
> 
> Is this pragma needed or carried here to be sure?
It's necessary for a compile warning. Just leveraged from the existing code.

> 
> >   static inline uint16_t
> >   reassemble_packets(struct iavf_rx_queue *rxq, struct rte_mbuf **rx_bufs,
> >   		   uint16_t nb_bufs, uint8_t *split_flags) @@ -276,4 +280,203
> @@
> >   	return 0;
> >   }
> >
> > +#ifdef RTE_ARCH_X86
> > +static __rte_always_inline void
> > +iavf_rxq_rearm_cmn(struct iavf_rx_queue *rxq, __rte_unused bool
> > +avx512)
> 
> What do you think expand 'cmn' to full 'common', it is clear from this patch
> what it stands for but later if you just look this function it is not that clear if it
> is an abbreviation for something else or common.
Sure. Will change it to 'common'.

  reply	other threads:[~2021-04-14  1:18 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-30  3:15 [dpdk-dev] [PATCH v2 0/3] fix segment fault in avx512 Wenzhuo Lu
2021-03-30  3:15 ` [dpdk-dev] [PATCH v2 1/3] net/iavf: fix segment fault in AVX512 Wenzhuo Lu
2021-03-30  3:15 ` [dpdk-dev] [PATCH v2 2/3] net/ice: " Wenzhuo Lu
2021-03-30  3:15 ` [dpdk-dev] [PATCH v2 3/3] net/i40e: " Wenzhuo Lu
2021-03-30  5:29 ` [dpdk-dev] [PATCH v3 0/3] fix segment fault in avx512 code Wenzhuo Lu
2021-03-30  5:29   ` [dpdk-dev] [PATCH v3 1/3] net/iavf: fix segment fault in AVX512 Wenzhuo Lu
2021-04-06 12:20     ` Coyle, David
2021-03-30  5:29   ` [dpdk-dev] [PATCH v3 2/3] net/ice: " Wenzhuo Lu
2021-04-06 12:21     ` Coyle, David
2021-03-30  5:29   ` [dpdk-dev] [PATCH v3 3/3] net/i40e: " Wenzhuo Lu
2021-04-06 12:22     ` Coyle, David
2021-04-08  8:36   ` [dpdk-dev] [PATCH v3 0/3] fix segment fault in avx512 code Zhang, Qi Z
2021-04-09  3:01 ` [dpdk-dev] [PATCH v4 " Wenzhuo Lu
2021-04-09  3:01   ` [dpdk-dev] [PATCH v4 1/3] net/iavf: fix segment fault in AVX512 Wenzhuo Lu
2021-04-13 12:37     ` Ferruh Yigit
2021-04-14  1:18       ` Lu, Wenzhuo [this message]
2021-04-09  3:01   ` [dpdk-dev] [PATCH v4 2/3] net/ice: " Wenzhuo Lu
2021-04-13 12:39     ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
2021-04-14  1:20       ` Lu, Wenzhuo
2021-04-09  3:01   ` [dpdk-dev] [PATCH v4 3/3] net/i40e: " Wenzhuo Lu
2021-04-09  7:00   ` [dpdk-dev] [PATCH v4 0/3] fix segment fault in avx512 code Zhang, Qi Z
2021-04-14  7:25   ` [dpdk-dev] [PATCH v5 " Wenzhuo Lu
2021-04-14  7:25     ` [dpdk-dev] [PATCH v5 1/3] net/iavf: fix segment fault in AVX512 Wenzhuo Lu
2021-04-14  7:25     ` [dpdk-dev] [PATCH v5 2/3] net/ice: " Wenzhuo Lu
2021-04-14  7:25     ` [dpdk-dev] [PATCH v5 3/3] net/i40e: " Wenzhuo Lu
2021-04-14 12:28     ` [dpdk-dev] [PATCH v5 0/3] fix segment fault in avx512 code Zhang, Qi Z

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=DM5PR11MB1787FA220B3A08DA1855BC328C4E9@DM5PR11MB1787.namprd11.prod.outlook.com \
    --to=wenzhuo.lu@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=stable@dpdk.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.