>-----Original Message-----
>From: Sunil Kumar Kori <sk...@marvell.com>
>Sent: Wednesday, March 25, 2020 4:10 PM
>To: Pavan Nikhilesh Bhagavatula <pbhagavat...@marvell.com>; Jerin
>Jacob Kollanukkaran <jer...@marvell.com>; Marko Kovacevic
><marko.kovace...@intel.com>; Ori Kam <or...@mellanox.com>; Bruce
>Richardson <bruce.richard...@intel.com>; Radu Nicolau
><radu.nico...@intel.com>; Akhil Goyal <akhil.go...@nxp.com>; Tomasz
>Kantecki <tomasz.kante...@intel.com>; Pavan Nikhilesh Bhagavatula
><pbhagavat...@marvell.com>; John McNamara
><john.mcnam...@intel.com>
>Cc: dev@dpdk.org
>Subject: RE: [dpdk-dev] [PATCH] examples/l2fwd-event: add option to
>configure port pairs
>
>Comments inline.
>
>Regards
>Sunil Kumar Kori
>
>>-----Original Message-----
>>From: pbhagavat...@marvell.com <pbhagavat...@marvell.com>
>>Sent: Tuesday, March 24, 2020 6:05 PM
>>To: Jerin Jacob Kollanukkaran <jer...@marvell.com>; Marko Kovacevic
>><marko.kovace...@intel.com>; Ori Kam <or...@mellanox.com>;
>Bruce
>>Richardson <bruce.richard...@intel.com>; Radu Nicolau
>><radu.nico...@intel.com>; Akhil Goyal <akhil.go...@nxp.com>;
>Tomasz
>>Kantecki <tomasz.kante...@intel.com>; Sunil Kumar Kori
>><sk...@marvell.com>; Pavan Nikhilesh Bhagavatula
>><pbhagavat...@marvell.com>; John McNamara
>><john.mcnam...@intel.com>
>>Cc: dev@dpdk.org
>>Subject: [dpdk-dev] [PATCH] examples/l2fwd-event: add option to
>configure
>>port pairs
>>
>>From: Pavan Nikhilesh <pbhagavat...@marvell.com>
>>
>>Current l2fwd-event application statically configures adjacent ports as
>>destination ports for forwarding the traffic.
>>
>>Add a config option to pass the forwarding port pair mapping which
>allows
>>the user to configure forwarding port mapping.
>>
>>If no config argument is specified, destination port map is not changed
>and
>>traffic gets forwarded with existing mapping.
>>
>>To align port/queue configuration of each lcore with destination port
>map,
>>port/queue configuration of each lcore gets modified when config
>option is
>>specificed.
>>
>>Ex: ./l2fwd-event -c 0xff -- -p 0x3f -q 2 --config="(0,3)(1,4)(2,5)"
>>
>>With above config option, traffic received from portid = 0 gets
>forwarded to
>>port = 3 and vice versa, similarly traffic gets forwarded on other port
>pairs
>>(1,4) and (2,5).
>>
>Is this config required to be updated for l2fwd also ?

In pipeline.

>
>>Signed-off-by: Pavan Nikhilesh <pbhagavat...@marvell.com>
>>---
>>updating enabled, diff --git a/examples/l2fwd-
>event/l2fwd_common.h
>>b/examples/l2fwd-event/l2fwd_common.h
>>index 7e33ee749..4e8b2fe14 100644
>>--- a/examples/l2fwd-event/l2fwd_common.h
>>+++ b/examples/l2fwd-event/l2fwd_common.h
>>@@ -69,6 +69,7 @@ struct l2fwd_resources {
>>      uint8_t sched_type;
>>      uint8_t mac_updating;
>>      uint8_t rx_queue_per_lcore;
>>+     uint8_t port_pairs;
>It can be changed to bool.

Will change in v2.

>
>>      uint16_t nb_rxd;
>>      uint16_t nb_txd;
>>      uint32_t enabled_port_mask;
>>diff --git a/examples/l2fwd-event/main.c b/examples/l2fwd-
>event/main.c
>>index 89a6bb9a4..92890d1ae 100644
>>--- a/examples/l2fwd-event/main.c
>>+++ b/examples/l2fwd-event/main.c
>>@@ -2,6 +2,8 @@
>>  * Copyright(C) 2019 Marvell International Ltd.
>>  */
>>
>>+#include <rte_string_fns.h>
>>+
>> #include "l2fwd_event.h"
>> #include "l2fwd_poll.h"
>>
>>@@ -22,7 +24,9 @@ l2fwd_event_usage(const char *prgname)
>>             "          Default mode = eventdev\n"
>>             "  --eventq-sched: Event queue schedule type, ordered,
>atomic or
>>parallel.\n"
>>             "                  Default: atomic\n"
>>-            "                  Valid only if --mode=eventdev\n\n",
>>+            "                  Valid only if --mode=eventdev\n"
>>+            "  --config: Configure forwarding port pair mapping\n"
>>+            "            Default: alternate port pairs\n\n",
>>             prgname);
>> }
>>
>>+l2fwd_event_parse_args(int argc, char **argv, struct
>l2fwd_resources
>>+*rsrc)
>> {
>>      int mac_updating = 1;
>>      struct option lgopts[] = {
>>@@ -134,12 +202,18 @@ l2fwd_event_parse_args(int argc, char
>**argv,
>>
>>      CMD_LINE_OPT_MODE_NUM},
>>              { CMD_LINE_OPT_EVENTQ_SCHED,
>required_argument, NULL,
>>
>>      CMD_LINE_OPT_EVENTQ_SCHED_NUM},
>>+             { CMD_LINE_OPT_PORT_PAIR_CONF,
>required_argument,
>>NULL,
>>+
>>      CMD_LINE_OPT_PORT_PAIR_CONF_NUM},
>>              {NULL, 0, 0, 0}
>>      };
>>      int opt, ret, timer_secs;
>>      char *prgname = argv[0];
>>-     char **argvopt;
>>+     uint16_t port_id;
>>      int option_index;
>>+     char **argvopt;
>New line is required.

Will fix in v2.
>
>>+     /* reset l2fwd_dst_ports */
>>+     for (port_id = 0; port_id < RTE_MAX_ETHPORTS; port_id++)
>>+             rsrc->dst_ports[port_id] = UINT32_MAX;
>>
>>      argvopt = argv;

Reply via email to