From: Thomas Monjalon <thomas@monjalon.net>
To: "Richardson, Bruce" <bruce.richardson@intel.com>
Cc: "Varghese, Vipin" <vipin.varghese@intel.com>,
Jerin Jacob Kollanukkaran <jerinj@marvell.com>,
"Mcnamara, John" <john.mcnamara@intel.com>,
"Kovacevic, Marko" <marko.kovacevic@intel.com>,
Ori Kam <orika@mellanox.com>,
"Nicolau, Radu" <radu.nicolau@intel.com>,
Akhil Goyal <akhil.goyal@nxp.com>,
"Kantecki, Tomasz" <tomasz.kantecki@intel.com>,
Sunil Kumar Kori <skori@marvell.com>,
dev@dpdk.org, "Andrzej Ostruszka [C]" <aostruszka@marvell.com>,
"dev@dpdk.org" <dev@dpdk.org>,
Vamsi Krishna Attunuru <vattunuru@marvell.com>,
Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>
Subject: Re: [dpdk-dev] [PATCH v4] examples/l2fwd: add cmdline option for forwarding port info
Date: Sun, 24 May 2020 18:13:22 +0200 [thread overview]
Message-ID: <10969041.qOdnLc68Dm@thomas> (raw)
In-Reply-To: <BYAPR18MB25187F920A6195D7451E7B58DEA10@BYAPR18MB2518.namprd18.prod.outlook.com>
Bruce, as maintainer of l2fwd example, any opinion about this change?
11/05/2020 02:23, Pavan Nikhilesh Bhagavatula:
> Hi Vipin,
>
> >Hi Pavan,
> >
> >snipped
> >> >
> >> >Should we check & warn the user if
> >> >1. port speed mismatch
> >> >2. on different NUMA
> >> >3. port pairs are physical and vdev like tap, and KNI (performance).
> >> >
> >>
> >> Sure, it can be a separate patch as it will be applicable for multiple
> >examples.
> >I believe this patch is for example `l2fwd`. But you would like to have to
> >updated for all `example`. I am ok for this.
> >
> >snipped
> >> >
> >> >Should not the check_port_pair be after this? If the port is not
> >> >enabled in port_mask will you skip that pair? or skip RX-TX from that
> >port?
> >>
> >> We check every port pair against l2fwd_enabled_port_mask in
> >> check_port_pair_config()
> >
> >
> >>
> >snipped
> >> >
> >> >As mentioned above there can ports in mask which might be
> >disabled for
> >> >port pair. Should not that be skipped rather than setting last port rx-
> >> >tx loopback?
> >>
> >> There could be scenarios where user might want to test 2x10G and
> >1x40G Why
> >> force the user to explicitly mention 1x40G as port pair of itself in the
> >portpair
> >> config?
> >I am not sure if I follow your thought, as your current port map only
> >allows `1:1` mapping by `struct port_pair_params`. This can be to self
> >like `(port0:port0),(port1:port1)` or `(port-0:port-1)`.
> >
> >1. But current `l2fwd_parse_port_pair_config` does not consider the
> >same port mapping as we have hard check for `if (nb_port_pair_params
> >>= RTE_MAX_ETHPORTS/2)`.
> >
> >2. `l2fwd_enabled_port_mask` is global variable of user port mask. This
> >can contain both valid and invalid mask. Hence we check
> >`l2fwd_enabled_port_mask & ~((1 << nb_ports) - 1)`.
> >
> >3. can these scenarios are true if we invoke `check_port_pair_config`
> >before actual port_mask check.
> > a. there are only 4 ports, hence possible mask is `0xf`.
> > b. user passes port argument as `0xe`
> > c. `check_port_pair_config` gets masks for `(1,3)` as input and
> >populates `port_pair_config_mask`.
> > d. As per the code, port 2 which is valid port and part of user port mask
> >will have lastport (which is port 3)? May be I did understand the logic
> >correct. Can you help me?
>
> Here user needs to explicitly mention (2,2) for port 2 to be setup else it
> will be skipped.
> If you see `check_port_pair_config` below we disable the ports that are not
> Mentioned in portmap.
>
> "
> check_port_pair_config(void)
> {
>
> <snip>
> port_pair_config_mask |= port_pair_mask;
> }
>
> l2fwd_enabled_port_mask &= port_pair_config_mask;
>
> return 0;
> }
> "
>
>
> >
> >So my concerns are 1) there is no same port mapping, 2) my
> >understanding on lastport logic is not clear and 3) as per the code there
> >is 1:N but 1:1.
> >
> >Hence there should be sufficient warning to user if port are of wrong
> >speed and NUMA.
>
> Unless the user disables stats using -T 0 option all the prints will be skipped.
>
> >
> >Note: current speed can be fetched only if the port are started too (in
> >Fortville).
> >
> >snipped
next prev parent reply other threads:[~2020-05-24 16:13 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-23 11:56 [dpdk-dev] [PATCH v1 1/1] bus/pci: probe PCI devices in whitelisted order vattunuru
2019-09-25 6:41 ` Slava Ovsiienko
2019-09-25 9:07 ` Gaëtan Rivet
2019-09-26 4:15 ` Vamsi Krishna Attunuru
2019-09-26 8:04 ` Gaëtan Rivet
2019-09-26 9:39 ` [dpdk-dev] [EXT] " Vamsi Krishna Attunuru
2019-09-30 12:51 ` [dpdk-dev] [PATCH v1] eal: add manual probing option Gaetan Rivet
2019-09-30 17:51 ` Aaron Conole
2019-10-01 7:28 ` Gaëtan Rivet
2019-10-01 12:57 ` Aaron Conole
2019-09-30 18:53 ` Stephen Hemminger
2019-10-01 9:10 ` Gaëtan Rivet
2019-10-01 9:49 ` Jerin Jacob
2019-10-01 14:09 ` Gaëtan Rivet
2019-10-01 14:26 ` Jerin Jacob
2019-10-03 7:58 ` [dpdk-dev] [PATCH v2] " Gaetan Rivet
2019-10-04 12:55 ` [dpdk-dev] [PATCH v3] " Gaetan Rivet
2019-10-07 1:27 ` Vamsi Krishna Attunuru
2019-10-23 8:44 ` Gaëtan Rivet
2019-10-25 11:59 ` Jerin Jacob
2019-10-25 12:50 ` Gaëtan Rivet
2019-10-25 13:24 ` Jerin Jacob
2019-10-25 14:41 ` [dpdk-dev] [PATCH v4] " Gaetan Rivet
2019-10-25 15:01 ` Jerin Jacob
2019-10-25 15:46 ` [dpdk-dev] [PATCH v5] " Gaetan Rivet
2019-10-25 15:51 ` Jerin Jacob
2020-01-22 16:51 ` Pavan Nikhilesh Bhagavatula
2020-01-23 9:20 ` Gaetan Rivet
2020-01-23 9:58 ` [dpdk-dev] [PATCH v7] " Gaetan Rivet
2020-02-03 5:16 ` Pavan Nikhilesh Bhagavatula
2020-02-03 22:21 ` Thomas Monjalon
2020-02-04 10:03 ` Gaetan Rivet
2020-02-04 11:07 ` Thomas Monjalon
2020-02-04 12:43 ` Gaetan Rivet
2020-02-04 15:06 ` Thomas Monjalon
2020-02-04 16:02 ` Gaetan Rivet
2020-02-10 14:51 ` Jerin Jacob
2020-02-10 15:27 ` Thomas Monjalon
2020-02-10 16:33 ` Jerin Jacob
2020-04-03 3:30 ` [dpdk-dev] [PATCH] [v1 1/1] examples/l2fwd: add cmdline option for forwarding port info vattunuru
2020-04-03 12:51 ` Andrzej Ostruszka [C]
2020-04-05 3:49 ` Vamsi Krishna Attunuru
2020-04-05 3:52 ` [dpdk-dev] [PATCH] [v2 " vattunuru
2020-04-06 9:32 ` Andrzej Ostruszka [C]
2020-04-26 21:19 ` Thomas Monjalon
2020-04-27 7:59 ` [dpdk-dev] [PATCH v3] " pbhagavatula
2020-04-27 9:19 ` Sunil Kumar Kori
2020-04-27 9:36 ` Andrzej Ostruszka [C]
2020-04-27 10:14 ` Sunil Kumar Kori
2020-04-27 16:38 ` Pavan Nikhilesh Bhagavatula
2020-04-27 16:49 ` Sunil Kumar Kori
2020-04-27 18:31 ` [dpdk-dev] [PATCH v4] " pbhagavatula
2020-04-28 5:54 ` Sunil Kumar Kori
2020-05-01 14:00 ` Varghese, Vipin
2020-05-01 15:14 ` Pavan Nikhilesh Bhagavatula
2020-05-02 4:34 ` Varghese, Vipin
2020-05-11 0:23 ` Pavan Nikhilesh Bhagavatula
2020-05-24 16:13 ` Thomas Monjalon [this message]
2020-05-25 9:29 ` Bruce Richardson
2020-07-04 13:36 ` Jerin Jacob
2020-07-05 12:23 ` Thomas Monjalon
2020-04-04 16:34 ` [dpdk-dev] [EXT] Re: [PATCH v7] eal: add manual probing option Jerin Jacob Kollanukkaran
2023-06-14 19:33 ` [dpdk-dev] " Stephen Hemminger
2023-06-26 16:12 ` Gaëtan Rivet
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=10969041.qOdnLc68Dm@thomas \
--to=thomas@monjalon.net \
--cc=akhil.goyal@nxp.com \
--cc=aostruszka@marvell.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=jerinj@marvell.com \
--cc=john.mcnamara@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=orika@mellanox.com \
--cc=pbhagavatula@marvell.com \
--cc=radu.nicolau@intel.com \
--cc=skori@marvell.com \
--cc=tomasz.kantecki@intel.com \
--cc=vattunuru@marvell.com \
--cc=vipin.varghese@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).