From: Thomas Monjalon <thomas@monjalon.net>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
Cc: Shahaf Shuler <shahafs@mellanox.com>, dev@dpdk.org
Subject: Re: [PATCH 4/4] ethdev: add helpers to move to the new offloads API
Date: Mon, 04 Sep 2017 15:53:33 +0200 [thread overview]
Message-ID: <2327783.H4uO08xLcu@xps> (raw)
In-Reply-To: <2601191342CEEE43887BDE71AB9772584F24602F@irsmsx105.ger.corp.intel.com>
04/09/2017 15:25, Ananyev, Konstantin:
> Hi Shahaf,
>
> > +/**
> > + * A conversion function from rxmode offloads API to rte_eth_rxq_conf
> > + * offloads API.
> > + */
> > +static void
> > +rte_eth_convert_rxmode_offloads(struct rte_eth_rxmode *rxmode,
> > + struct rte_eth_rxq_conf *rxq_conf)
> > +{
> > + if (rxmode->header_split == 1)
> > + rxq_conf->offloads |= DEV_RX_OFFLOAD_HEADER_SPLIT;
> > + if (rxmode->hw_ip_checksum == 1)
> > + rxq_conf->offloads |= DEV_RX_OFFLOAD_CHECKSUM;
> > + if (rxmode->hw_vlan_filter == 1)
> > + rxq_conf->offloads |= DEV_RX_OFFLOAD_VLAN_FILTER;
>
> Thinking on it a bit more:
> VLAN_FILTER is definitely one per device, as it would affect VFs also.
> At least that's what we have for Intel devices (ixgbe, i40e) right now.
> For Intel devices VLAN_STRIP is also per device and
> will also be applied to all corresponding VFs.
> In fact, right now it is possible to query/change these 3 vlan offload flags on the fly
> (after dev_start) on port basis by rte_eth_dev_(get|set)_vlan_offload API.
> So, I think at least these 3 flags need to be remained on a port basis.
I don't understand how it helps to be able to configure the same thing
in 2 places.
I think you are just describing a limitation of these HW: some offloads
must be the same for all queues.
It does not prevent from configuring them in the per-queue setup.
> In fact, why can't we have both per port and per queue RX offload:
> - dev_configure() will accept RX_OFFLOAD_* flags and apply them on a port basis.
> - rx_queue_setup() will also accept RX_OFFLOAD_* flags and apply them on a queue basis.
> - if particular RX_OFFLOAD flag for that device couldn't be setup on a queue basis -
> rx_queue_setup() will return an error.
The queue setup can work while the value is the same for every queues.
> - rte_eth_rxq_info can be extended to provide information which RX_OFFLOADs
> can be configured on a per queue basis.
Yes the PMD should advertise its limitations like being forced to
apply the same configuration to all its queues.
> BTW - in that case we probably wouldn't need ignore flag inside rx_conf anymore.
next prev parent reply other threads:[~2017-09-04 13:53 UTC|newest]
Thread overview: 134+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-04 7:12 [PATCH 0/4] ethdev new offloads API Shahaf Shuler
2017-09-04 7:12 ` [PATCH 1/4] ethdev: rename Rx and Tx configuration structs Shahaf Shuler
2017-09-04 12:06 ` Ananyev, Konstantin
2017-09-04 12:45 ` Shahaf Shuler
2017-09-04 7:12 ` [PATCH 2/4] ethdev: introduce Rx queue offloads API Shahaf Shuler
2017-09-04 7:12 ` [PATCH 3/4] ethdev: introduce Tx " Shahaf Shuler
2017-09-04 7:12 ` [PATCH 4/4] ethdev: add helpers to move to the new " Shahaf Shuler
2017-09-04 12:13 ` Ananyev, Konstantin
2017-09-04 13:25 ` Ananyev, Konstantin
2017-09-04 13:53 ` Thomas Monjalon [this message]
2017-09-04 14:18 ` Ananyev, Konstantin
2017-09-05 7:48 ` Thomas Monjalon
2017-09-05 8:09 ` Ananyev, Konstantin
2017-09-05 10:51 ` Shahaf Shuler
2017-09-05 13:50 ` Thomas Monjalon
2017-09-05 15:31 ` Ananyev, Konstantin
2017-09-06 6:01 ` Shahaf Shuler
2017-09-06 9:33 ` Ananyev, Konstantin
2017-09-13 9:27 ` Thomas Monjalon
2017-09-13 11:16 ` Shahaf Shuler
2017-09-13 12:41 ` Thomas Monjalon
2017-09-13 12:56 ` Ananyev, Konstantin
2017-09-13 13:20 ` Thomas Monjalon
2017-09-13 21:42 ` Ananyev, Konstantin
2017-09-14 8:02 ` Thomas Monjalon
2017-09-18 10:31 ` Bruce Richardson
2017-09-18 10:57 ` Ananyev, Konstantin
2017-09-18 11:04 ` Bruce Richardson
2017-09-18 11:27 ` Thomas Monjalon
2017-09-18 11:04 ` Bruce Richardson
2017-09-18 11:11 ` Ananyev, Konstantin
2017-09-18 11:32 ` Thomas Monjalon
2017-09-18 11:37 ` Bruce Richardson
2017-09-18 14:27 ` Shahaf Shuler
2017-09-18 14:42 ` Thomas Monjalon
2017-09-18 14:44 ` Bruce Richardson
2017-09-18 18:18 ` Shahaf Shuler
2017-09-18 21:08 ` Thomas Monjalon
2017-09-19 7:33 ` Shahaf Shuler
2017-09-19 7:56 ` Thomas Monjalon
2017-09-13 12:56 ` Shahaf Shuler
2017-09-04 14:02 ` Shahaf Shuler
2017-09-04 15:55 ` Ananyev, Konstantin
2017-09-10 12:07 ` [PATCH v2 0/2] ethdev " Shahaf Shuler
2017-09-10 12:07 ` [PATCH v2 1/2] ethdev: introduce Rx queue " Shahaf Shuler
2017-09-10 12:07 ` [PATCH v2 2/2] ethdev: introduce Tx " Shahaf Shuler
2017-09-10 17:48 ` Stephen Hemminger
2017-09-11 5:52 ` Shahaf Shuler
2017-09-11 6:21 ` Jerin Jacob
2017-09-11 7:56 ` Shahaf Shuler
2017-09-11 8:06 ` Jerin Jacob
2017-09-11 8:46 ` Shahaf Shuler
2017-09-11 9:05 ` Jerin Jacob
2017-09-11 11:02 ` Ananyev, Konstantin
2017-09-12 4:01 ` Jerin Jacob
2017-09-12 5:25 ` Shahaf Shuler
2017-09-12 5:51 ` Jerin Jacob
2017-09-12 6:35 ` Shahaf Shuler
2017-09-12 6:46 ` Andrew Rybchenko
2017-09-12 7:17 ` Jerin Jacob
2017-09-12 8:03 ` Shahaf Shuler
2017-09-12 10:27 ` Andrew Rybchenko
2017-09-12 14:26 ` Ananyev, Konstantin
2017-09-12 14:36 ` Jerin Jacob
2017-09-12 14:43 ` Andrew Rybchenko
2017-09-12 6:43 ` Andrew Rybchenko
2017-09-12 6:59 ` Shahaf Shuler
2017-09-11 8:03 ` Andrew Rybchenko
2017-09-11 12:27 ` Shahaf Shuler
2017-09-11 13:10 ` Andrew Rybchenko
2017-09-13 6:37 ` [PATCH v3 0/2] ethdev new " Shahaf Shuler
2017-09-13 6:37 ` [PATCH v3 1/2] ethdev: introduce Rx queue " Shahaf Shuler
2017-09-13 8:13 ` Andrew Rybchenko
2017-09-13 12:49 ` Shahaf Shuler
2017-09-13 8:49 ` Andrew Rybchenko
2017-09-13 9:13 ` Andrew Rybchenko
2017-09-13 12:33 ` Shahaf Shuler
2017-09-13 12:34 ` Andrew Rybchenko
2017-09-13 6:37 ` [PATCH v3 2/2] ethdev: introduce Tx " Shahaf Shuler
2017-09-13 8:40 ` Andrew Rybchenko
2017-09-13 12:51 ` Shahaf Shuler
2017-09-13 9:10 ` [PATCH v3 0/2] ethdev new " Andrew Rybchenko
2017-09-17 6:54 ` [PATCH v4 0/3] " Shahaf Shuler
2017-09-17 6:54 ` [PATCH v4 1/3] ethdev: introduce Rx queue " Shahaf Shuler
2017-09-17 6:54 ` [PATCH v4 2/3] ethdev: introduce Tx " Shahaf Shuler
2017-09-18 7:50 ` Andrew Rybchenko
2017-09-17 6:54 ` [PATCH v4 3/3] doc: add details on ethdev " Shahaf Shuler
2017-09-18 7:51 ` Andrew Rybchenko
2017-09-18 13:40 ` Mcnamara, John
2017-09-18 7:51 ` [PATCH v4 0/3] ethdev new " Andrew Rybchenko
2017-09-28 18:54 ` [PATCH v5 " Shahaf Shuler
2017-09-28 18:54 ` [PATCH v5 1/3] ethdev: introduce Rx queue " Shahaf Shuler
2017-10-03 0:32 ` Ferruh Yigit
2017-10-03 6:25 ` Shahaf Shuler
2017-10-03 19:46 ` Ferruh Yigit
2017-09-28 18:54 ` [PATCH v5 2/3] ethdev: introduce Tx " Shahaf Shuler
2017-10-03 19:50 ` Ferruh Yigit
2017-10-04 8:06 ` Shahaf Shuler
2017-09-28 18:54 ` [PATCH v5 3/3] doc: add details on ethdev " Shahaf Shuler
2017-10-04 8:17 ` [PATCH v6 0/4] ethdev new " Shahaf Shuler
2017-10-04 8:17 ` [PATCH v6 1/4] ethdev: introduce Rx queue " Shahaf Shuler
2017-10-04 8:17 ` [PATCH v6 2/4] ethdev: introduce Tx " Shahaf Shuler
2017-10-04 8:18 ` [PATCH v6 3/4] ethdev: add mbuf fast free Tx offload Shahaf Shuler
2017-10-04 8:18 ` [PATCH v6 4/4] doc: add details on ethdev offloads API Shahaf Shuler
2017-10-04 13:46 ` Mcnamara, John
2018-03-15 1:58 ` Patil, Harish
2018-03-15 6:05 ` Shahaf Shuler
2018-03-16 15:51 ` [PATCH] doc: update new ethdev offload API description Ferruh Yigit
2018-03-17 0:16 ` Patil, Harish
2018-03-18 5:52 ` Shahaf Shuler
2018-03-21 9:47 ` Andrew Rybchenko
2018-03-21 10:54 ` Ferruh Yigit
2018-03-21 11:08 ` Andrew Rybchenko
2018-03-21 11:10 ` Shahaf Shuler
2018-03-21 11:19 ` Andrew Rybchenko
2018-03-21 11:23 ` Shahaf Shuler
2018-03-21 11:37 ` Andrew Rybchenko
2018-03-21 11:40 ` Shahaf Shuler
2018-03-21 12:52 ` Ferruh Yigit
2018-03-21 13:06 ` Shahaf Shuler
2018-03-21 13:11 ` Ananyev, Konstantin
2018-03-21 12:03 ` Ananyev, Konstantin
2018-03-21 12:29 ` Shahaf Shuler
2018-03-21 12:34 ` Andrew Rybchenko
2018-03-21 12:37 ` Ananyev, Konstantin
2018-03-21 14:08 ` Thomas Monjalon
2018-03-21 14:28 ` Ferruh Yigit
2018-03-21 14:40 ` Thomas Monjalon
2018-03-21 15:26 ` Bruce Richardson
2018-03-21 15:29 ` Shahaf Shuler
2018-03-21 15:44 ` Bruce Richardson
2018-05-08 12:33 ` Ferruh Yigit
2017-10-04 16:12 ` [PATCH v6 0/4] ethdev new offloads API Ananyev, Konstantin
2017-10-05 0:55 ` Ferruh Yigit
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=2327783.H4uO08xLcu@xps \
--to=thomas@monjalon.net \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@intel.com \
--cc=shahafs@mellanox.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 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.