From: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
To: "Yigit, Ferruh" <ferruh.yigit@intel.com>,
Thomas Monjalon <thomas@monjalon.net>,
"dev@dpdk.org" <dev@dpdk.org>
Cc: Ajit Khaparde <ajit.khaparde@broadcom.com>,
Jerin Jacob <jerin.jacob@caviumnetworks.com>,
Shijith Thotton <shijith.thotton@cavium.com>,
Santosh Shukla <santosh.shukla@caviumnetworks.com>,
Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>,
John Daley <johndale@cisco.com>,
"Lu, Wenzhuo" <wenzhuo.lu@intel.com>,
"Xing, Beilei" <beilei.xing@intel.com>,
"Zhang, Qi Z" <qi.z.zhang@intel.com>,
"Wu, Jingjing" <jingjing.wu@intel.com>,
Adrien Mazarguil <adrien.mazarguil@6wind.com>,
Nelio Laranjeiro <nelio.laranjeiro@6wind.com>,
Yongseok Koh <yskoh@mellanox.com>,
"Shahaf Shuler" <shahafs@mellanox.com>,
Tomasz Duszynski <tdu@semihalf.com>,
"Jianbo Liu" <jianbo.liu@arm.com>,
Alejandro Lucero <alejandro.lucero@netronome.com>,
Hemant Agrawal <hemant.agrawal@nxp.com>,
Shreyansh Jain <shreyansh.jain@nxp.com>,
Harish Patil <harish.patil@cavium.com>,
Rasesh Mody <rasesh.mody@cavium.com>,
Andrew Rybchenko <arybchenko@solarflare.com>,
Shrikrishna Khare <skhare@vmware.com>,
Maxime Coquelin <maxime.coquelin@redhat.com>,
"Legacy, Allain (Wind River)" <allain.legacy@windriver.com>,
"Richardson, Bruce" <bruce.richardson@intel.com>,
Gaetan Rivet <gaetan.rivet@6wind.com>,
Olivier Matz <olivier.matz@6wind.com>
Subject: Re: [dpdk-dev] Survey for final decision about per-port offload API
Date: Tue, 24 Apr 2018 11:08:50 +0000 [thread overview]
Message-ID: <2601191342CEEE43887BDE71AB977258AEA520B2@IRSMSX102.ger.corp.intel.com> (raw)
In-Reply-To: <ea9ff099-75a0-e10a-191e-ba8696996a25@intel.com>
Hi Ferruh,
>
> On 3/30/2018 2:47 PM, Thomas Monjalon wrote:
> > There are some discussions about a specific part of the offload API:
> > "To enable per-port offload, the offload should be set on both
> > device configuration and queue setup."
> >
> > It means the application must repeat the port offload flags
> > in rte_eth_conf.[rt]xmode.offloads and rte_eth_[rt]xconf.offloads,
> > when calling respectively rte_eth_dev_configure() and
> > rte_eth_[rt]x_queue_setup for each queue.
> >
> > The PMD must check if there is mismatch, i.e. a port offload not
> > repeated in queue setup.
> > There is a proposal to do this check at ethdev level:
> > http://dpdk.org/ml/archives/dev/2018-March/094023.html
> >
> > It was also proposed to relax the API and allow "forgetting" port
> > offloads in queue offloads:
> > http://dpdk.org/ml/archives/dev/2018-March/092978.html
> >
> > It would mean the offloads applied to a queue result of OR operation:
> > rte_eth_conf.[rt]xmode.offloads | rte_eth_[rt]xconf.offloads
> >
> > 1/ Do you agree with above API change?
>
> There is a detail of ability to disabling queue level offloads in queue_setup()
> function, I want to discuss here.
>
> Prolog:
> port level offload: An offload only can be applied port level, to all queues.
> queue level offload: An offload can be applied into individual queues of the port
>
> PMD reports port offload capability: port level offload + queue level offload
> PMD reports queue offload capability: queue level offload
>
>
> Above suggested change to API:
> - Application will be limited in configure() to set only an offload within "port
> offload capability"
> - Application will be limited in queue_setup() to set only an offload within
> "queue offload capability"
>
>
> This doesn't say much about disabling an offload in queue_setup(), as a rule:
> - An "port level offload" can't be disabled in queue_setup()
>
>
> There are two cases of disable:
> 1- Disabling a "queue level offload" enabled queue_setup() previously
> 2- Disabling a "queue level offload" enabled in configure()
>
> If second is not supported, to disable the offload, applications should
> stop->re-configure()->re-queue_setup()->start the port. But having this
> capability makes the offloading parameters more confusing for applications.
>
>
> I suggest adding disable support to fist one but not second one.
Not sure why to introduce such limitation?
Konstantin
next prev parent reply other threads:[~2018-04-24 11:08 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-30 13:47 Thomas Monjalon
2018-03-30 15:13 ` Andrew Rybchenko
2018-03-30 15:46 ` Thomas Monjalon
2018-04-01 1:51 ` Zhang, Qi Z
2018-04-02 15:44 ` Thomas Monjalon
2018-04-01 4:44 ` Shahaf Shuler
2018-04-02 15:53 ` Thomas Monjalon
2018-04-03 5:19 ` Shahaf Shuler
2018-04-02 1:27 ` Lu, Wenzhuo
2018-04-02 3:18 ` Xing, Beilei
2018-04-02 17:23 ` Wu, Jingjing
2018-04-02 17:39 ` Patil, Harish
2018-04-02 20:10 ` Thomas Monjalon
2018-04-02 20:45 ` Patil, Harish
2018-04-03 0:53 ` Zhang, Qi Z
2018-04-03 19:59 ` John Daley (johndale)
2018-04-04 0:25 ` Yongseok Koh
2018-04-11 14:42 ` Olivier Matz
2018-04-11 15:17 ` Alejandro Lucero
2018-04-12 5:41 ` Jerin Jacob
2018-04-12 7:03 ` Maxime Coquelin
2018-04-12 9:08 ` Shreyansh Jain
2018-04-24 10:39 ` Ferruh Yigit
2018-04-24 11:08 ` Ananyev, Konstantin [this message]
2018-04-24 12:27 ` Ferruh Yigit
2018-04-24 15:20 ` Ananyev, Konstantin
2018-04-24 16:18 ` Ferruh Yigit
2018-04-24 12:56 ` Shahaf Shuler
2018-04-24 22:00 ` Thomas Monjalon
2018-04-25 13:32 ` Ferruh Yigit
2018-04-25 15:21 ` Thomas Monjalon
2018-04-25 16:45 ` 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=2601191342CEEE43887BDE71AB977258AEA520B2@IRSMSX102.ger.corp.intel.com \
--to=konstantin.ananyev@intel.com \
--cc=adrien.mazarguil@6wind.com \
--cc=ajit.khaparde@broadcom.com \
--cc=alejandro.lucero@netronome.com \
--cc=allain.legacy@windriver.com \
--cc=arybchenko@solarflare.com \
--cc=beilei.xing@intel.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=gaetan.rivet@6wind.com \
--cc=harish.patil@cavium.com \
--cc=hemant.agrawal@nxp.com \
--cc=jerin.jacob@caviumnetworks.com \
--cc=jianbo.liu@arm.com \
--cc=jingjing.wu@intel.com \
--cc=johndale@cisco.com \
--cc=maxime.coquelin@redhat.com \
--cc=nelio.laranjeiro@6wind.com \
--cc=olivier.matz@6wind.com \
--cc=qi.z.zhang@intel.com \
--cc=rahul.lakkireddy@chelsio.com \
--cc=rasesh.mody@cavium.com \
--cc=santosh.shukla@caviumnetworks.com \
--cc=shahafs@mellanox.com \
--cc=shijith.thotton@cavium.com \
--cc=shreyansh.jain@nxp.com \
--cc=skhare@vmware.com \
--cc=tdu@semihalf.com \
--cc=thomas@monjalon.net \
--cc=wenzhuo.lu@intel.com \
--cc=yskoh@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 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).