examples/l2fwd-event: set RSS based on device capabilities
Checks
Commit Message
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Setup RSS configuration based on underlying device capabilities.
Signed-off-by: Satananda Burla <sburla@marvell.com>
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
examples/l2fwd-event/l2fwd_common.c | 11 +++++++++++
1 file changed, 11 insertions(+)
Comments
On Mon, Dec 16, 2019 at 11:07 AM <pbhagavatula@marvell.com> wrote:
>
> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>
> Setup RSS configuration based on underlying device capabilities.
>
> Signed-off-by: Satananda Burla <sburla@marvell.com>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> ---
Please add Fixes: and cc stable as well as it is a fix for the bug.
> examples/l2fwd-event/l2fwd_common.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/examples/l2fwd-event/l2fwd_common.c b/examples/l2fwd-event/l2fwd_common.c
> index 0c069ec35..2fae6f52c 100644
> --- a/examples/l2fwd-event/l2fwd_common.c
> +++ b/examples/l2fwd-event/l2fwd_common.c
> @@ -46,6 +46,17 @@ l2fwd_event_init_ports(struct l2fwd_resources *rsrc)
> if (ret != 0)
> rte_panic("Error during getting device (port %u) info: %s\n",
> port_id, strerror(-ret));
> + local_port_conf.rx_adv_conf.rss_conf.rss_hf &=
> + dev_info.flow_type_rss_offloads;
> + if (local_port_conf.rx_adv_conf.rss_conf.rss_hf !=
> + port_conf.rx_adv_conf.rss_conf.rss_hf) {
> + printf("Port %u modified RSS hash function based on hardware support,"
> + "requested:%#"PRIx64" configured:%#"PRIx64"",
> + port_id,
> + port_conf.rx_adv_conf.rss_conf.rss_hf,
> + local_port_conf.rx_adv_conf.rss_conf.rss_hf);
> + }
> +
> if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
> local_port_conf.txmode.offloads |=
> DEV_TX_OFFLOAD_MBUF_FAST_FREE;
> --
> 2.17.1
>
On Mon, Dec 16, 2019 at 11:16 AM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>
> On Mon, Dec 16, 2019 at 11:07 AM <pbhagavatula@marvell.com> wrote:
> >
> > From: Pavan Nikhilesh <pbhagavatula@marvell.com>
> >
> > Setup RSS configuration based on underlying device capabilities.
> >
> > Signed-off-by: Satananda Burla <sburla@marvell.com>
> > Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> > ---
>
>
> Please add Fixes: and cc stable as well as it is a fix for the bug.
Ping
>
>
> > examples/l2fwd-event/l2fwd_common.c | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
> >
> > diff --git a/examples/l2fwd-event/l2fwd_common.c b/examples/l2fwd-event/l2fwd_common.c
> > index 0c069ec35..2fae6f52c 100644
> > --- a/examples/l2fwd-event/l2fwd_common.c
> > +++ b/examples/l2fwd-event/l2fwd_common.c
> > @@ -46,6 +46,17 @@ l2fwd_event_init_ports(struct l2fwd_resources *rsrc)
> > if (ret != 0)
> > rte_panic("Error during getting device (port %u) info: %s\n",
> > port_id, strerror(-ret));
> > + local_port_conf.rx_adv_conf.rss_conf.rss_hf &=
> > + dev_info.flow_type_rss_offloads;
> > + if (local_port_conf.rx_adv_conf.rss_conf.rss_hf !=
> > + port_conf.rx_adv_conf.rss_conf.rss_hf) {
> > + printf("Port %u modified RSS hash function based on hardware support,"
> > + "requested:%#"PRIx64" configured:%#"PRIx64"",
> > + port_id,
> > + port_conf.rx_adv_conf.rss_conf.rss_hf,
> > + local_port_conf.rx_adv_conf.rss_conf.rss_hf);
> > + }
> > +
> > if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
> > local_port_conf.txmode.offloads |=
> > DEV_TX_OFFLOAD_MBUF_FAST_FREE;
> > --
> > 2.17.1
> >
@@ -46,6 +46,17 @@ l2fwd_event_init_ports(struct l2fwd_resources *rsrc)
if (ret != 0)
rte_panic("Error during getting device (port %u) info: %s\n",
port_id, strerror(-ret));
+ local_port_conf.rx_adv_conf.rss_conf.rss_hf &=
+ dev_info.flow_type_rss_offloads;
+ if (local_port_conf.rx_adv_conf.rss_conf.rss_hf !=
+ port_conf.rx_adv_conf.rss_conf.rss_hf) {
+ printf("Port %u modified RSS hash function based on hardware support,"
+ "requested:%#"PRIx64" configured:%#"PRIx64"",
+ port_id,
+ port_conf.rx_adv_conf.rss_conf.rss_hf,
+ local_port_conf.rx_adv_conf.rss_conf.rss_hf);
+ }
+
if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
local_port_conf.txmode.offloads |=
DEV_TX_OFFLOAD_MBUF_FAST_FREE;