On Wed, Aug 30, 2017 at 06:24:24PM +0800, Tiwei Bie wrote:
Hi Jens,
On Wed, Aug 30, 2017 at 11:13:06AM +0200, Jens Freimann wrote:
Hi Tiwei,
On Tue, Aug 29, 2017 at 04:26:01PM +0800, Tiwei Bie wrote:
> After starting a device, the driver shouldn't deliver the
> packets that already existed in
On Wed, Aug 30, 2017 at 02:03:52PM +0200, Maxime Coquelin wrote:
> Hi Zhiyong,
>
> On 08/03/2017 03:21 AM, Zhiyong Yang wrote:
> >This patchset has some trivial changes and make it easier
> >to read code.
> >
> >Zhiyong Yang (2):
> > virtio: fix the wrong indent
> > virtio: use macro to replac
HI, Ferruh
> -Original Message-
> From: Yigit, Ferruh
> Sent: Friday, September 1, 2017 12:18 AM
> To: Zhao1, Wei ; dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 1/2] net/i40e: queue region set and flush
>
> On 8/24/2017 4:26 AM, Wei Zhao wrote:
> > This feature enable queue regions conf
Some devices may not support or fail setting VLAN offload
configuration based on dynamic circurmstances so the
vlan_offload_set_t vector is modified to return an int so
the caller can determine success or not.
rte_eth_dev_set_vlan_offload is updated to return the
value provided by the vector when
Hi, Ferruh
> -Original Message-
> From: Yigit, Ferruh
> Sent: Friday, September 1, 2017 12:54 AM
> To: Zhao1, Wei ; dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v2 1/2] net/i40e: fix clear xstats bug in vf
> port
>
> On 8/29/2017 3:28 AM, Wei Zhao wrote:
> > There is a bug in vf clear x
Some devices do not support reset of eth stats. An application may
need to know not to clear shadow stats if the device cannot.
rte_eth_stats_reset is updated to provide a return code to share
whether the device supports reset or not.
Signed-off-by: David Harton
---
v5:
* squashed doc patch
*
Hi Thomas,
> -Original Message-
> From: Thomas Monjalon [mailto:tho...@monjalon.net]
> Sent: Friday, September 1, 2017 4:35 AM
> To: Hu, Jiayu
> Cc: dev@dpdk.org; Yigit, Ferruh
> Subject: Re: [dpdk-dev] [PATCH] lib/gro: fix typo in .map file
>
> 22/08/2017 16:38, Ferruh Yigit:
> > On 8/
Hi Thomas,
> -Original Message-
> From: Thomas Monjalon [mailto:tho...@monjalon.net]
> Sent: Thursday, August 31, 2017 6:04 PM
> To: David Harton (dharton)
> Cc: dev@dpdk.org; ferruh.yi...@intel.com; ajit.khapa...@broadcom.com; John
> Daley (johndale) ; konstantin.anan...@intel.com;
> jin
10/08/2017 15:29, David Harton:
> Some devices do not support reset of eth stats. An application may
> need to know not to clear shadow stats if the device cannot.
Yes, thanks for improving this old API.
> rte_eth_stats_reset is updated to provide a return code to share
> whether the device supp
01/09/2017 00:10, Thomas Monjalon:
> 10/08/2017 15:29, David Harton:
> > --- a/doc/guides/rel_notes/release_17_11.rst
> > +++ b/doc/guides/rel_notes/release_17_11.rst
> > @@ -124,6 +124,7 @@ ABI Changes
> > Also, make sure to start the actual text at the margin.
> >
10/08/2017 15:29, David Harton:
> --- a/doc/guides/rel_notes/release_17_11.rst
> +++ b/doc/guides/rel_notes/release_17_11.rst
> @@ -124,6 +124,7 @@ ABI Changes
> Also, make sure to start the actual text at the margin.
> =
>
> +* Chan
One more comment below
01/09/2017 00:04, Thomas Monjalon:
> Hi,
>
> 25/08/2017 15:47, David Harton:
> > Some devices may not support or fail setting VLAN offload
> > configuration based on dynamic circurmstances so the
> > vlan_offload_set_t vector is modified to return an int so
> > the caller c
On 31.08.2017 17:32, Stephen Hemminger wrote:
> On Thu, 31 Aug 2017 12:22:29 +0200
> Markus Theil wrote:
>
>> +/*
>> + * It masks the msi on/off of generating MSI messages.
>> + */
>> +static void
>> +igbuio_msi_mask_irq(struct pci_dev *pdev, struct msi_desc *desc, int32_t
>> state)
>> +{
>> +
On 30.08.2017 18:32, Ferruh Yigit wrote:
> Please add fall back comment: /* fall back to MSI */
>
> And related this fallback, previously flow was:
> Try MSIX, if fails try legacy.
>
> Now it is:
> Try MSIX, if fails try MSI, if fails try legacy.
>
> Do you think, does this new step included may br
Hi,
25/08/2017 15:47, David Harton:
> Some devices may not support or fail setting VLAN offload
> configuration based on dynamic circurmstances so the
> vlan_offload_set_t vector is modified to return an int so
> the caller can determine success or not.
I agree with allowing to return an error.
Signed-off-by: Markus Theil
---
lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
index 5830453..b578c4a 100644
--- a/lib/librte_eal/linuxapp/i
igb_uio already allocates irqs using pci_alloc_irq_vectors on
recent kernels >= 4.8. The interrupt disable code was not
using the corresponding pci_free_irq_vectors, but the also
deprecated pci_disable_msix, before this fix.
Fixes: 99bb58f3adc7 ("igb_uio: switch to new irq function for MSI-X")
Cc:
Interrupt setup code in igb_uio has to deal with multiple
types of interrupts and kernel versions. This patch moves
the setup and teardown code into own functions, to make
it more readable.
Signed-off-by: Markus Theil
---
lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 112 +-
This patch adds MSI IRQ mode and in a way, that should
also work on older kernel versions. The base for my patch
was an attempt to do this in cf705bc36c which was later reverted in
d8ee82745a. Compilation was tested on Linux 3.2, 4.10 and 4.12.
Signed-off-by: Markus Theil
---
lib/librte_eal/linu
This patch substitutes the custom MSI/MSI-X mask code and uses
already existing kernel APIs. Feedback/small corrections to the previous
patch of this series are also incorporated.
Signed-off-by: Markus Theil
---
lib/librte_eal/linuxapp/igb_uio/compat.h | 26 +++--
lib/librte_eal/linuxapp/ig
31/08/2017 17:26, Thomas Monjalon:
> 31/08/2017 16:34, Bruce Richardson:
> > On Thu, Aug 31, 2017 at 03:15:05PM +0100, Ferruh Yigit wrote:
> > > On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> > > > While working on a build system replacement, I find a number of small
> > > > inconsistencies and mi
22/08/2017 16:38, Ferruh Yigit:
> On 8/22/2017 2:58 PM, Jiayu Hu wrote:
> > The names of rte_gro_ctx_create() and rte_gro_ctx_destroy() in
> > rte_gro_version.map are incorrect. This patch is to fix this issue.
> >
> > Fixes: e996506a1c07 ("lib/gro: add Generic Receive Offload API framework")
> >
On 8/29/2017 3:28 AM, Wei Zhao wrote:
> There is a bug in vf clear xstats command, it do not
> record the statics data in offset struct member.So, vf
> need to keep record of xstats data from pf and update
> the statics according to offset.
>
> Fixes: da61cd0849766 ("i40evf: add extended stats")
>
Tx descriptor for TSO embeds packet header to be replicated. If Tx inline
is enabled, there could be additional packet data inlined with 4B inline
header ahead. And between the header and additional inlined packet data,
there may be padding to make the inline part aligned to
MLX5_WQE_DWORD_SIZE. In
On 8/24/2017 4:26 AM, Wei Zhao wrote:
> This feature enable queue regions configuration for RSS in PF/VF,
> so that different traffic classes or different packet
> classification types can be separated to different queues in
> different queue regions.This patch can set queue region range,
> it incl
> -Original Message-
> From: Ferruh Yigit [mailto:ferruh.yi...@intel.com]
> Sent: Thursday, August 31, 2017 11:54 AM
> To: David Harton (dharton) ; jingjing...@intel.com;
> beilei.x...@intel.com
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] i40e: fix i40e_validate_mac_addr to permi
On 8/22/2017 11:21 PM, David Harton wrote:
> The i40e maintains a single MAC filter table for both
> unicast and multicast addresses. The i40e_validate_mac_addr
> function was preventing multicast addresses from being added
> to the table via i40evf_add_mac_addr. Fixed the issue by
> removing the
On 8/30/2017 3:47 PM, Nelio Laranjeiro wrote:
> On redhat 7.2 clang reports the following error:
>CC mlx5_rxmode.o
> /drivers/net/mlx5/mlx5_ethdev.c:820:32: error: field 'edata' with variable
> sized type 'struct ethtool_link_settings' not at the end of a struct or
> class is a GNU extensi
On Thu, 31 Aug 2017 12:22:29 +0200
Markus Theil wrote:
> +/*
> + * It masks the msi on/off of generating MSI messages.
> + */
> +static void
> +igbuio_msi_mask_irq(struct pci_dev *pdev, struct msi_desc *desc, int32_t
> state)
> +{
> + u32 mask_bits = desc->masked;
> + u32 offset = desc->
31/08/2017 16:34, Bruce Richardson:
> On Thu, Aug 31, 2017 at 03:15:05PM +0100, Ferruh Yigit wrote:
> > On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> > > While working on a build system replacement, I find a number of small
> > > inconsistencies and minor issues with our current code, which, if f
On Thu, Aug 31, 2017 at 03:54:45PM +0100, Bernard Iremonger wrote:
Hi Bernard,
> From: Ferruh Yigit
>
> The following library APIs's are implemented:
> rte_flow_classify_create
> rte_flow_classify_validate
> rte_flow_classify_destroy
> rte_flow_classify_query
>
> The following librte_table ACL API
On Thu, Aug 31, 2017 at 03:54:43PM +0100, Bernard Iremonger wrote:
Hi Bernard,
Few suggestions inline.
> The rte_table_acl_entry_add() function was returning data from
> acl_memory instead of acl_rule_memory. It was also returning data
> from entry instead of entry_ptr.
>
> The rte_table_acl_entr
Adding octeontx ethdev driver documentation and claim octeontx ethdev
driver maintainership.
Cc: John McNamara
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
MAINTAINERS | 7 ++
doc/guides/nics/index.rst| 1 +
doc/guides/nics/octeontx.rst | 251
add start, stop and close support.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/octeontx_ethdev.c | 137 +
1 file changed, 137 insertions(+)
diff --git a/drivers/net/octeontx/octeontx_ethdev.c
b/drivers/net/octeontx/octeont
Mark Packet type parsing in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 22
drivers/net/octeontx/octeontx_rxtx.c | 91 ++
3 files change
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/octeontx_rxtx.c | 38
drivers/net/octeontx/octeontx_rxtx.h | 2 ++
2 files changed, 40 insertions(+)
diff --git a/drivers/net/octeontx/octeontx_rxtx.c
b/drivers/net/octeontx
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/octeontx_ethdev.c | 88 ++
1 file changed, 88 insertions(+)
diff --git a/drivers/net/octeontx/octeontx_ethdev.c
b/drivers/net/octeontx/octeontx_ethdev.c
index e2f1e630b..c5e324346
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/Makefile| 6 ++
drivers/net/octeontx/octeontx_rxtx.c | 104 +++
drivers/net/octeontx/octeontx_rxtx.h | 46
3 files changed, 156 insertions(+)
create mod
Mark "Queue start/stop" as P as its been implemented only for tx queue.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 90 ++
drivers/net/octeontx/octeontx_ethd
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/octeontx_ethdev.c | 168 +
drivers/net/octeontx/octeontx_ethdev.h | 9 ++
2 files changed, 177 insertions(+)
diff --git a/drivers/net/octeontx/octeontx_ethdev.c
b/drivers/net/oc
Implement "mac_addr_set" op and mark "Unicast MAC filter" feature as "P"
as "mac_addr_add" and "mac_addr_remove" are not implemented.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 14
Mark Basic stats support in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 52 ++
2 files changed, 53 insertions(+)
diff --git a/doc/guides/nics/feat
Mark Promiscuous mode in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 42 ++
2 files changed, 43 insertions(+)
diff --git a/doc/guides/nics/feature
Mark Link status in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 1 +
drivers/net/octeontx/octeontx_ethdev.c | 100 +
2 files changed, 101 insertions(+)
diff --git a/doc/guides/nics/features/o
Mark Speed capabilities, Lock-free Tx queue in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 2 ++
drivers/net/octeontx/octeontx_ethdev.c | 37 ++
2 files changed, 39 insertions(+)
diff --git a/
mark Jumbo frame, CRC offload support in features.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
doc/guides/nics/features/octeontx.ini | 2 +
drivers/net/octeontx/octeontx_ethdev.c | 93 ++
2 files changed, 95 insertions(+)
diff --git a/doc/gui
Create ethdev ports by registering withethdev subsystem based on
"nr_port" vdev argument or maximum physical ports available in the system.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/octeontx_ethdev.c | 172 -
1 file chang
An octeontx ethdev device consists of multiple PKO VF devices, a PKI
VF device and multiple SSOVF devices which shared between eventdev.
This patch adds a vdev based device called "eth_octeontx" which
will create multiple ethernet ports based on "nr_port" or maximum
physical ports are available in
Adding remaining PKO operations like flow control, Tx channel query, etc.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/base/octeontx_pkovf.c | 114 +
drivers/net/octeontx/base/octeontx_pkovf.h | 17 +
2 files changed, 131 in
PKO is the packet output processing unit, which receives the packet
from the core and sends to the BGX interface. This patch adds the
basic PKO operation like open, close, start and stop. These operations
are implemented through mailbox messages and kernel PF driver being the
server to process the
Adding remaining PKI operations and sync up the mailbox
definitions with PF driver.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/base/octeontx_pki_var.h | 237 +
drivers/net/octeontx/base/octeontx_pkivf.c | 80 ++
drivers/net/octeontx
PKI is packet input unit, which receives the packet from the
BGX interface. This patch adds the basic PKI operation like
open, close, start and stop. These operations are implemented through
mailbox messages and kernel PF driver being the server to process the
message with the logical port identifi
An octeontx ethdev device consists of multiple PKO VF devices and an PKI
VF device. On Octeontx HW, each Rx queues are enumerated as SSOVF device
which is exposed as event_octeontx device, Tx queues are enumerated as
PKOVF device, and ingress packet configuration is accomplished through
PKIVF devic
Adding remaining BGX operations like, link status, statistics,
promiscuous configuration etc.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/base/octeontx_bgx.c | 154 +++
drivers/net/octeontx/base/octeontx_bgx.h | 76
Some of the internal toolchain versions create unaligned
memory access fault when copying from 17-31B buffer using memcpy.
Subsequent patches in this series will be using 17-31B mbox message.
Since the mailbox message copy comes in slow path, changing memcpy to
byte-per-byte copy to workaround the
BGX is an HW MAC interface. This patch adds the basic BGX operation like
open, close, start and stop. These operations are implemented through
mailbox messages and kernel PF driver being the server to process the
message with the physical port identifier.
Signed-off-by: Jerin Jacob
Co-authored-by
Adding octeontx specific io operations. Added a stub for building
against non octeontx targets.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
drivers/net/octeontx/base/octeontx_io.h | 156
1 file changed, 156 insertions(+)
create mode 100644 dri
Add flow_classify_autotest program.
Set up IPv4 ACL field definitions.
Create table_acl for use by librte_flow_classify API's.
Create an mbuf pool for use by rte_flow_classify_query.
For each of the librte_flow_classify API's:
add bad parameter tests
add bad pattern tests
add bad action tests
add
Adding bare minimum PMD library and doc build infrastructure.
Signed-off-by: Jerin Jacob
Co-authored-by: Santosh Shukla
---
config/common_base| 10 +++
doc/guides/nics/features/octeontx.ini | 9 +++
drivers/net/Makefile |
This patch set provides the initial version of DPDK PMD for the
integrated NIC device found in Cavium OCTEONTX SoC(CN83xx) family.
Introduction to OCTEONTX ARM processors can be found
here: http://www.cavium.com/OCTEON-TX_ARM_Processors.html
OCTEONTX SoC family has two types of NIC controllers,
1
The flow_classify sample application exercises the following
librte_flow_classify API's:
rte_flow_classify_create
rte_flow_classify_validate
rte_flow_classify_destroy
rte_flow_classify_query
It sets up the IPv4 ACL field definitions.
It creates table_acl and adds and deletes rules using the
librt
The rte_table_acl_lookup() function was returning data from acl_memory
instead of acl_rule_memory.
Fixes: 166923eb2f78 ("table: ACL")
Cc: sta...@dpdk.org
Signed-off-by: Bernard Iremonger
---
lib/librte_table/rte_table_acl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib
From: Ferruh Yigit
The following library APIs's are implemented:
rte_flow_classify_create
rte_flow_classify_validate
rte_flow_classify_destroy
rte_flow_classify_query
The following librte_table ACL API's are used:
f_create to create a table ACL.
f_add to add an ACL rule to the table.
f_del to de
The rte_table_acl_entry_add() function was returning data from
acl_memory instead of acl_rule_memory. It was also returning data
from entry instead of entry_ptr.
The rte_table_acl_entry_delete() function was returning data from
acl_memory instead of acl_rule_memory.
Fixes: 166923eb2f78 ("table: A
DPDK works with packets, but some network administration tools works based on
flow information.
This library is suggested to provide a helper API to convert packet based
information to the flow records.
Basically the library consist of APIs to validate, create and destroy the rule
and to query
Hi all,
I'm testing multi-process example on PowerPC system, looks like shared memory
not working properly.
Below are the error and debug info of the first multi-process example
'simple_mp' (works as expected on X86):
// Build DPDK, master branch
# make T=ppc_64-power8-linuxapp-gcc -j160 -C exa
On Thu, Aug 31, 2017 at 03:15:05PM +0100, Ferruh Yigit wrote:
> On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> > While working on a build system replacement, I find a number of small
> > inconsistencies and minor issues with our current code, which, if fixed
> > would make it simplier to generaliz
On Thu, Aug 31, 2017 at 03:18:47PM +0100, Ferruh Yigit wrote:
> On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> > While almost all libraries have the library name match the directory name,
> > some libraries and drivers do not. For those that don't, some have the
> > version filename use the libnam
On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> While almost all libraries have the library name match the directory name,
> some libraries and drivers do not. For those that don't, some have the
> version filename use the libname, e.g. null_crypto, others have it use the
> directory name, e.g. eth
On 8/31/2017 2:42 PM, Bruce Richardson wrote:
> While working on a build system replacement, I find a number of small
> inconsistencies and minor issues with our current code, which, if fixed
> would make it simplier to generalize DPDK build rules. Main set of changes
> is to have the name of the v
On 8/31/2017 2:14 PM, Thomas Monjalon wrote:
31/08/2017 12:52, Akhil Goyal:
On 8/31/2017 3:36 PM, Thomas Monjalon wrote:
31/08/2017 11:37, Akhil Goyal:
On 8/29/2017 8:19 PM, Thomas Monjalon wrote:
25/07/2017 13:21, Akhil Goyal:
2. Ipsec inline(RTE_SECURITY_SESS_ETH_INLINE_CRYPTO) - This is
While almost all libraries have the library name match the directory name,
some libraries and drivers do not. For those that don't, some have the
version filename use the libname, e.g. null_crypto, others have it use the
directory name, e.g. ether. Using the library name seems the better
standard t
The QAT crypto driver does not need to depend on the ether library, so
remove the unnecessary header inclusion.
Signed-off-by: Bruce Richardson
---
drivers/crypto/qat/qat_crypto.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/crypto/qat/qat_crypto.c b/drivers/crypto/qat/qat_crypto.c
The filenames of the linker map files for DPDK PMDs, all follow a
standard format: rte_pmd__version.map. The ring version, however,
had eth instead of pmd in the name, so was non-standard. By changing
this, we no longer need the build system to explicitly be given the name of
the mapfile, as it can
While working on a build system replacement, I find a number of small
inconsistencies and minor issues with our current code, which, if fixed
would make it simplier to generalize DPDK build rules. Main set of changes
is to have the name of the version.map file for libs/drivers consistent
with the c
The filenames of the linker map files for DPDK libraries, all follow a
standard format: rte__version.map. The ip_frag version, however,
was missing an underscore in the name, so was non-standard. By changing
this, we no longer need the build system to explicitly be given the name of
the mapfile, as
Platform description
guest (dpdk)
++
||
||
|port0 |
++
|
| virtio
|
++
| tap0 |
||
||
++
host (linux, vhost-
Platform description
guest (dpdk)
++
||
||
|port0 |
++
|
| virtio
|
++
| tap0 |
||
||
++
host (linux, vhost-
Platform description
guest (dpdk)
++
||
||
|port0 |
++
|
| virtio
|
++
| tap0 |
||
||
++
host (linux, vhost-
Validation:
Platform description
guest (dpdk)
++
||
||
|port0 |
++
|
| virtio
|
++
| tap0 |
||
||
++
host (
Validation:
Platform description
guest (dpdk)
++
||
||
|port0 |
++
|
| virtio
|
++
| tap0 |
||
||
++
host
Split use_simple_rxtx into use_simple_rx and use_simple_tx,
and ensure that only use_simple_tx is updated when txq flags
forces to use the standard Tx handler.
This change is also useful for next commit (disable simple Rx
path when Rx checksum is requested).
Cc: sta...@dpdk.org
Signed-off-by: Ol
The simple Rx handler is selected even if Rx checksum offload is
requested by the application, but this handler does not support
offloads. This results in broken received packets (no checksum flag but
invalid checksum in the mbuf data).
Disable the simple Rx handler in that case.
Fixes: 96cb67119
The mbuf->port was was not properly set for the first received
mbufs. Fix this by setting it in virtqueue_enqueue_recv_refill_simple(),
which is used to enqueue the first mbuf in the ring.
The function virtio_rxq_rearm_vec(), which is used to rearm the ring
with new mbufs, is correct and does not
In rx/tx queue setup functions, some code is executed only if
use_simple_rxtx == 1. The value of this variable can change depending on
the offload flags or sse support. If Rx queue setup is called before Tx
queue setup, it can result in an invalid configuration:
- dev_configure is called: use_simp
The selection of Rx/Tx handlers is done at several places,
group them in one function set_rxtx_funcs().
The update of hw->use_simple_rxtx is also rationalized:
- initialized to 1 (prefer simple path)
- in dev configure or rx/tx queue setup, if something prevents from
using the simple path, chang
On error, we should log with error level.
Fixes: 9f4f2846ef76 ("virtio: support vlan filtering")
Fixes: 86d59b21468a ("net/virtio: support LRO")
Fixes: 96cb6711939e ("net/virtio: support Rx checksum offload")
Cc: sta...@dpdk.org
Signed-off-by: Olivier Matz
---
drivers/net/virtio/virtio_ethdev.c
As described in API documentation, the field hw_ip_checksum
requests both L3 and L4 offload.
Fixes: dad1ec72a377 ("doc: document NIC features")
Cc: sta...@dpdk.org
Signed-off-by: Olivier Matz
---
doc/guides/nics/features.rst | 1 +
1 file changed, 1 insertion(+)
diff --git a/doc/guides/nics/fe
This reverts
commit 4dab342b7522 ("net/virtio: do not falsely claim to do IP checksum").
The description of rxmode->hw_ip_checksum is:
hw_ip_checksum : 1, /**< IP/UDP/TCP checksum offload enable. */
Despite its name, this field can be set by an application to enable L3
and L4 checksums. I
This reverts
commit 701a64622c26 ("net/virtio: do not claim to support LRO")
Setting rxmode->enable_lro is a way to tell the host that the guest is
ok to receive tso packets. From the guest point of view, it is like
enabling LRO on a physical driver.
Fixes: 701a64622c26 ("net/virtio: do not claim
This patchset addresses several issues related to offload and
Rx/Tx handler selection in virtio PMD.
Olivier Matz (9):
net/virtio: revert "do not claim to support LRO"
net/virtio: revert "do not falsely claim to do IP checksum"
doc: fix description of L4 Rx checksum offload
net/virtio: fix
31/08/2017 12:52, Akhil Goyal:
> On 8/31/2017 3:36 PM, Thomas Monjalon wrote:
> > 31/08/2017 11:37, Akhil Goyal:
> >> On 8/29/2017 8:19 PM, Thomas Monjalon wrote:
> >>> 25/07/2017 13:21, Akhil Goyal:
> >> 2. Ipsec inline(RTE_SECURITY_SESS_ETH_INLINE_CRYPTO) - This is when the
> >> crypto operations
On 8/31/2017 3:36 PM, Thomas Monjalon wrote:
31/08/2017 11:37, Akhil Goyal:
On 8/29/2017 8:19 PM, Thomas Monjalon wrote:
25/07/2017 13:21, Akhil Goyal:
These are very similar to what Declan proposed with a few additions.
This can be updated further for other security protocols like MACSec and
In some use cases of integer division, denominator remains constant and
numerator varies. It is possible to optimize division for such specific
scenarios.
The librte_sched uses rte_reciprocal to optimize division so, moving it to
eal/common would allow other libraries and applications to use it.
This commit provides a set of tests for verifying the correctness and
performance of both unsigned 32 and 64bit reciprocal based division.
Signed-off-by: Pavan Nikhilesh
---
test/test/Makefile| 2 +
test/test/test_reciprocal_division.c | 111 ++
tes
Currently, rte_reciprocal only supports unsigned 32bit divisors. This
commit adds support for unsigned 64bit divisors.
Rename unsigned 32bit specific functions appropriately and update
librte_sched accordingly.
Signed-off-by: Pavan Nikhilesh
---
lib/librte_eal/bsdapp/eal/rte_eal_version.map |
This patch adds MSI IRQ mode and in a way, that should
also work on older kernel versions. The base for my patch
was an attempt to do this in cf705bc36c which was later reverted in
d8ee82745a. Compilation was tested on Linux 3.2, 4.10 and 4.12.
Signed-off-by: Markus Theil
---
lib/librte_eal/linu
Interrupt setup code in igb_uio has to deal with multiple
types of interrupts and kernel versions. This patch moves
the setup and teardown code into own functions, to make
it more readable.
Signed-off-by: Markus Theil
---
lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 112 +-
igb_uio already allocates irqs using pci_alloc_irq_vectors on
recent kernels >= 4.8. The interrupt disable code was not
using the corresponding pci_free_irq_vectors, but the also
deprecated pci_disable_msix, before this fix.
Fixes: 99bb58f3adc7 ("igb_uio: switch to new irq function for MSI-X")
Cc:
31/08/2017 11:37, Akhil Goyal:
> On 8/29/2017 8:19 PM, Thomas Monjalon wrote:
> > 25/07/2017 13:21, Akhil Goyal:
> >> These are very similar to what Declan proposed with a few additions.
> >> This can be updated further for other security protocols like MACSec and
> >> DTLS
> >
> > You should avo
1 - 100 of 132 matches
Mail list logo