[dpdk-dev] [PATCH v2 2/2] ethdev: introduce Tx queue offloads API
Jerin Jacob
jerin.jacob at caviumnetworks.com
Mon Sep 11 08:21:20 CEST 2017
-----Original Message-----
> Date: Mon, 11 Sep 2017 05:52:19 +0000
> From: Shahaf Shuler <shahafs at mellanox.com>
> To: Stephen Hemminger <stephen at networkplumber.org>
> CC: Thomas Monjalon <thomas at monjalon.net>, "dev at dpdk.org" <dev at dpdk.org>
> Subject: Re: [dpdk-dev] [PATCH v2 2/2] ethdev: introduce Tx queue offloads
> API
>
> Sunday, September 10, 2017 8:48 PM, Stephen Hemminger:
> >
> > On Sun, 10 Sep 2017 15:07:49 +0300
> > Shahaf Shuler <shahafs at mellanox.com> wrote:
> >
> > > Introduce a new API to configure Tx offloads.
> > >
> > > In the new API, offloads are divided into per-port and per-queue
> > > offloads. The PMD reports capability for each of them.
> > > Offloads are enabled using the existing DEV_TX_OFFLOAD_* flags.
> > > To enable per-port offload, the offload should be set on both device
> > > configuration and queue configuration. To enable per-queue offload,
> > > the offloads can be set only on queue configuration.
> > >
> > > In addition the Tx offloads will be disabled by default and be enabled
> > > per application needs. This will much simplify PMD management of the
> > > different offloads.
> > >
> > > The new API does not have an equivalent for the below, benchmark
> > > specific, flags:
> > >
> > > - ETH_TXQ_FLAGS_NOREFCOUNT
> > > - ETH_TXQ_FLAGS_NOMULTMEMP
> > >
> > > Applications should set the ETH_TXQ_FLAGS_IGNORE flag on txq_flags
> > > field in order to move to the new API.
> > >
> > > The old Tx offloads API is kept for the meanwhile, in order to enable
> > > a smooth transition for PMDs and application to the new API.
> > >
> > > Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>
> > > ---
> >
> > Agree on a conceptual and hardware level, that this is a property that could
> > be per queue. But is there really an application that would want to have
> > refcounting on one queue and not another? If application is cloning mbuf's it
> > needs refcounting. One could even argue that for safety these should be
> > library wide. That way if an application tried to manipulate ref count on an
> > mbuf and refcountin was enabled it could be panic'd.
>
> Actually the refcount and multi mempool flags has no equivalent on this new API. They are not counted as offloads rather some guarantees from application side, which I agree that probably needs to by library wide.
> In the current API you cannot set those per queue nor per port. I think there is intention to move those flags to some other location following this series [1]
I don't think that is in following this series. It should be in this
series, if we are removing a feature then we should find a way to fit that in
some location as there is a use case for it[1]. Without an alternative,
this patch is NACK from me.
[1]
http://dpdk.org/ml/archives/dev/2017-September/074475.html
>
> [1]
> http://dpdk.org/ml/archives/dev/2017-September/074475.html
>
>
>
More information about the dev
mailing list