DPDK patches and discussions
 help / color / mirror / Atom feed
From: Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	Jerin Jacob Kollanukkaran <jerinj@marvell.com>,
	Marko Kovacevic <marko.kovacevic@intel.com>,
	Ori Kam <orika@mellanox.com>,
	Bruce Richardson <bruce.richardson@intel.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>,
	"stable@dpdk.org" <stable@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] examples/l3fwd: fix em mode datapath	selection
Date: Tue, 23 Apr 2019 09:12:42 +0000	[thread overview]
Message-ID: <CY4PR1801MB1863AA6B1B67EDA328C33782DE230@CY4PR1801MB1863.namprd18.prod.outlook.com> (raw)
In-Reply-To: <1979146.r4zusaNbqz@xps>



>-----Original Message-----
>From: dev <dev-bounces@dpdk.org> On Behalf Of Thomas Monjalon
>Sent: Tuesday, April 23, 2019 2:05 PM
>To: Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>
>Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Marko
>Kovacevic <marko.kovacevic@intel.com>; Ori Kam <orika@mellanox.com>;
>Bruce Richardson <bruce.richardson@intel.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>; stable@dpdk.org
>Subject: Re: [dpdk-dev] [PATCH] examples/l3fwd: fix em mode datapath
>selection
>
>23/04/2019 04:47, Pavan Nikhilesh Bhagavatula:
>>From: Thomas Monjalon <thomas@monjalon.net>
>> >10/04/2019 09:29, Pavan Nikhilesh Bhagavatula:
>> >> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>> >>
>> >> Currently, l3wfd em mode has two datapath modes em_sequential and
>> >> em_hlm. We can select either of them by defining
>> >NO_HASH_MULTI_LOOKUP
>> >> to one or zero.
>> >> The code checks if NO_HASH_MULTI_LOOKUP is defined or not instead
>> >> of checking for the value.
>> >>
>> >> Fixes: 52c97adc1f0f ("examples/l3fwd: fix exact match performance")
>> >> Cc: stable@dpdk.org
>> >>
>> >> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
>> >> ---
>> >> --- a/examples/l3fwd/l3fwd_em.c
>> >> +++ b/examples/l3fwd/l3fwd_em.c
>> >>  #if defined RTE_ARCH_X86 || defined RTE_MACHINE_CPUFLAG_NEON
>-#if
>> >> defined(NO_HASH_MULTI_LOOKUP)
>> >> +#if NO_HASH_MULTI_LOOKUP
>> >
>> >A quick grep shows that it used in another place with #ifdef:
>> >
>> >examples/l3fwd/l3fwd.h:#if !defined(NO_HASH_MULTI_LOOKUP) &&
>> >defined(RTE_MACHINE_CPUFLAG_NEON)
>> >
>> >
>>
>> #if !defined(NO_HASH_MULTI_LOOKUP) &&
>> defined(RTE_MACHINE_CPUFLAG_NEON) #define
>NO_HASH_MULTI_LOOKUP 1
>> #endif
>>
>> This macro is used to set l3fwd_em_sequential as the default EM
>> datapath on AARCH64 as its performance is better.
>> (http://patches.dpdk.org/patch/49372/)
>>
>> make -C examples/l3fwd           #Selects l3fwd_em_sequential by default on
>AARCH 64
>>
>> Currently, we cannot select em_hlm without manually editing the macro
>> as using the below command still sets em_sequential as the default
>> datapath because the macro modified in the patch that selects the datapath
>checks if NO_HASH_MULTI_LOOKUP is defined or not rather than its value.
>>
>> EXTRA_CFLAGS='-DNO_HASH_MULTI_LOOKUP=0' make -C examples/l3fwd
>>
>> I hope I cleared up things a bit.
>
>In my understanding, we should check the value in the other case too, instead
>of #if defined.

That will lead to undefined and redefined error:

[dpdk] # make -C examples/l3fwd
make: Entering directory '/root/pavan/dpdk-int/examples/l3fwd'
  CC main.o
  CC l3fwd_lpm.o
In file included from /root/dpdk/examples/l3fwd/l3fwd_lpm.c:28:0:
/root/dpdk/examples/l3fwd/l3fwd.h:14:6: error: "NO_HASH_MULTI_LOOKUP" is not defined, evaluates to 0 [-Werror=undef]
 #if !NO_HASH_MULTI_LOOKUP && defined(RTE_MACHINE_CPUFLAG_NEON)

[dpdk] # EXTRA_CFLAGS='-DNO_HASH_MULTI_LOOKUP=0' make -C examples/l3fwd
make: Entering directory '/root/dpdk/examples/l3fwd'
  CC main.o                                                                                       ]
 #define NO_HASH_MULTI_LOOKUP 1
 n file included from /root/dpdk/examples/l3fwd/l3fwd_lpm.c:28:0:
<command-line>:0:0: note:
                                                                                                  ]
 #define NO_HASH_MULTI_LOOKUP 1is the location of the previous definition

>
>

  parent reply	other threads:[~2019-04-23  9:12 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-10  7:29 Pavan Nikhilesh Bhagavatula
2019-04-10  7:29 ` Pavan Nikhilesh Bhagavatula
2019-04-22 21:20 ` Thomas Monjalon
2019-04-22 21:20   ` Thomas Monjalon
2019-04-23  2:47   ` Pavan Nikhilesh Bhagavatula
2019-04-23  2:47     ` Pavan Nikhilesh Bhagavatula
2019-04-23  8:35     ` Thomas Monjalon
2019-04-23  8:35       ` Thomas Monjalon
2019-04-23  9:12       ` Pavan Nikhilesh Bhagavatula [this message]
2019-04-23  9:12         ` Pavan Nikhilesh Bhagavatula
2019-04-24  2:59         ` Ruifeng Wang (Arm Technology China)
2019-04-24  2:59           ` Ruifeng Wang (Arm Technology China)
2019-05-02 23:32 ` Thomas Monjalon
2019-05-02 23:32   ` 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=CY4PR1801MB1863AA6B1B67EDA328C33782DE230@CY4PR1801MB1863.namprd18.prod.outlook.com \
    --to=pbhagavatula@marvell.com \
    --cc=akhil.goyal@nxp.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=marko.kovacevic@intel.com \
    --cc=orika@mellanox.com \
    --cc=pablo.de.lara.guarch@intel.com \
    --cc=radu.nicolau@intel.com \
    --cc=stable@dpdk.org \
    --cc=thomas@monjalon.net \
    --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).