A new DPDK release can be downloaded here:
http://dpdk.org/browse/dpdk/tag/?id=v1.7.1
It contains some bug fixes and drivers enhancements.
Changelog (main changes since 1.7.0)
- fixes for:
* ixgbe crash
* i40e with BSD
* vmxnet3 with
Provide a wrapper routine to enable receive of scattered packets with a
vector driver.
Signed-off-by: Bruce Richardson
---
lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 16
lib/librte_pmd_ixgbe/ixgbe_rxtx.h | 1 +
lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c | 173
Adjust the fast-path code to fix the regression caused by the pool
pointer moving to the second cache line. This change adjusts the
prefetching and also the way in which the mbufs are freed back to the
mempool.
Note: slow-path e.g. path supporting jumbo frames, is still slower, but
is dealt with by
The l2_len and l3_len fields are used for TX offloads and so should be
put on the second cache line, along with the other fields only used on
TX.
Signed-off-by: Bruce Richardson
---
lib/librte_mbuf/rte_mbuf.h | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/librte_mb
This change splits the mbuf in two to move the pool and next pointers to
the second cache line. This frees up 16 bytes in first cache line.
Signed-off-by: Bruce Richardson
---
app/test/test_mbuf.c | 2 +-
lib/librte_mbuf/rte_mbuf.h | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
The vector PMD expects fields to be in a specific order so that it can
do vector operations on multiple fields at a time. Following mbuf
rework, adjust driver to take account of the new layout and re-enable it
in the config.
Signed-off-by: Bruce Richardson
---
config/common_linuxapp
Add markers or "labels" at given points inside the mbuf which can be
used instead of individual fields to identify the start of logical
sections inside the mbuf.
The use of typedefs and dummy fields was chosen over using unions
because of a couple reasons:
* unions cause an extra level of indentat
Removed the explicit zero-sized metadata definition at the end of the
mbuf data structure. Updated the metadata macros to take account of this
change so that all existing code which uses those macros still works.
Signed-off-by: Bruce Richardson
---
lib/librte_mbuf/rte_mbuf.h | 22 ---
* Ensure comments line up correctly
* Simplify the #ifdefs around the refcnt fields to make them clearer
Signed-off-by: Bruce Richardson
---
lib/librte_mbuf/rte_mbuf.h | 17 -
1 file changed, 8 insertions(+), 9 deletions(-)
diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mb
Since the flags field is now 64-bits, we can allow one bit to be used to
indicate a control i.e. non-packet mbuf. Dedicate the high bit (bit 63)
for this purpose and add in a utility macro to test if a given mbuf has
the bit set or not.
Signed-off-by: Bruce Richardson
---
lib/librte_mbuf/rte_mbu
The offload flags field (ol_flags) was 16-bits and had no further room
for expansion. This patch increases the field size to 64-bits, using up
the remaining reserved space in the single-cache-line mbuf.
NOTE: none of the values for existing flags have been changed, i.e. no
new numbers have been ex
Replace a reserved slot with the new packet type field used to identify
the type of the packet, i.e. what protocols are used.
Signed-off-by: Bruce Richardson
---
lib/librte_mbuf/rte_mbuf.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte
* Reorder the fields in the mbuf so that we have fields that are used$
together side-by-side in the structure. This means that we have a$
contiguous block of 8-bytes in the mbuf which are used to reset an mbuf$
of descriptor rearm, and a block of 16-bytes of data (excluding flags)
which are set on
From: Olivier Matz
Original patch:
The mbuf structure already contains a pointer to the beginning of the
buffer (m->buf_addr). It is not needed to use 8 bytes again to store
another pointer to the beginning of the data.
Using a 16 bits unsigned integer is enough as we know that a mbuf is
ne
This patch set continues on from the changes in part 1, and depends
upon that patch set.
This patch set reorders the fields in the mbuf structure and splits
the structure across two cache lines, given lots of new space for new
fields to be added. This set uses some of that space by expanding the
> > >
> > > Hi Franck,
> > >
> > > 2014-09-02 13:20, Franck BAUDIN:
> > > > I am using dpdk-ovs 1.1.0 (latest release) as follow :
> > > >
> > > > linux-guest (no DPKD) <--- virtIO ---> OVDK 1.1.0 (with latest
> > > > DPDK [*]) < --
> > > - Niantic --- > linux-native
> > > >
> > > [...]
> > > > UD
Hi,
On 09/03/14 13:13, Xie, Huawei wrote:
> Looping in the dpdk-ovs list.
>
> * Does the new vhost API allow a user to know if all the relevant offloads
> have
> been
> turned on/off for that interface? It seems that this is possible through the
> virtio_net
> structure but it would be good to ge
>
> Hi,
>
> On 09/03/14 13:13, Xie, Huawei wrote:
> > Looping in the dpdk-ovs list.
> >
> > * Does the new vhost API allow a user to know if all the relevant
> > offloads have been turned on/off for that interface? It seems that
> > this is possible through the virtio_net structure but it would b
(2014/09/03 14:39), Xie, Huawei wrote:
> Thanks Tetsuya:
> Some of them are due to 80 character limitation. Is it ok to break the
> limitation for better indentation?
It's is up to the cording style of dpdk. But, there may be no strict
rule in dpdk.
So please use your original cord. :)
Than
Hi Huawei,
I added few comments. Mainly those comments are about source code indent.
(2014/09/02 17:55), Huawei Xie wrote:
> +
> +/**
> + * Structure contains variables relevant to RX/TX virtqueues.
> + */
> +struct vhost_virtqueue {
> + /**< descriptor ring. */
> + struct vring_desc*
KNI applies only to linux, so there should be no need for any kni files to
be present in the bsdapp eal folder.
Signed-off-by: Bruce Richardson
---
lib/librte_eal/bsdapp/eal/Makefile | 2 +-
.../bsdapp/eal/include/exec-env/rte_kni_common.h | 166 -
2 files
Calculating hash for data of variable length is more efficient
when that data is sliced into 8-byte pieces. The rest part of data
is hashed using either 8 and 4-byte CRC32 intrinsics.
Signed-off-by: Yerden Zhumabekov
---
lib/librte_hash/rte_hash_crc.h | 31 +++
1 fi
SSE4.2 provides _mm_crc32_u64 intrinsic with 8-byte operand.
Signed-off-by: Yerden Zhumabekov
---
lib/librte_hash/rte_hash_crc.h | 16
1 file changed, 16 insertions(+)
diff --git a/lib/librte_hash/rte_hash_crc.h b/lib/librte_hash/rte_hash_crc.h
index b48b0db..102b2a0 100644
-
As SSE4.2 provides CRC32 instructions with either 32 and 64 bit operands,
new rte_hash_crc_8byte() call assisted with _mm_crc32_u64 intrinsic may be
useful.
Then, rte_hash_crc() function is redesigned to take advantage of both 32
and 64 bit operands. This improves the function's performance signif
> -Original Message-
> From: Gray, Mark D
> Sent: Wednesday, September 03, 2014 6:01 PM
> To: Thomas Monjalon; Franck BAUDIN; Xie, Huawei
> Cc: dev at dpdk.org; dpdk-ovs at lists.01.org
> Subject: RE: [dpdk-dev] Wrong TCP checksum of packets sent by Linux guest
> (virtIO/vhost)
>
> >
> >
>
> Hi Franck,
>
> 2014-09-02 13:20, Franck BAUDIN:
> > I am using dpdk-ovs 1.1.0 (latest release) as follow :
> >
> > linux-guest (no DPKD) <--- virtIO ---> OVDK 1.1.0 (with latest DPDK [*]) <
> > --
> - Niantic --- > linux-native
> >
> [...]
> > UDP/ICMP connectivity is fine, but TCP checksum
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Stephen Hemminger
> Sent: Wednesday, September 03, 2014 7:02 AM
> To: Xie, Huawei
> Cc: dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 2/3] lib/librte_vhost: vhost library support
> to facilitate integration with DPDK accelerated vswitch
On Wed, Sep 03, 2014 at 01:17:53AM +, Saygin, Artur wrote:
> Thanks for prompt responses!
>
> To clarify, the questions is not about accessing a NIC, but about a NIC
> accessing a very specific block of physical memory, possibly non-kernel
> managed.
>
Still not sure what you mean here by n
Thanks Tetsuya:
Some of them are due to 80 character limitation. Is it ok to break the
limitation for better indentation?
> -Original Message-
> From: Tetsuya.Mukawa [mailto:mukawa at igel.co.jp]
> Sent: Wednesday, September 03, 2014 11:39 AM
> To: Xie, Huawei; dev at dpdk.org
> S
Hi Stephen,
There are some reports about build errors with igb_uio.
This is critical for the release.
As your patches have introduced this problem, we'd like
to have your opinion.
For release 1.7.1, I've reverted MSI support.
We should try to fix it for next release.
2014-09-01 16:55, Guillaume
> > Make ACL library to build/work on 'default' architecture:
> > - make rte_acl_classify_scalar really scalar
> > (make sure it wouldn't use sse4 instrincts through resolve_priority()).
> > - Provide two versions of rte_acl_classify code path:
> > rte_acl_classify_sse() - could be build and use
> It provides unit test to measure cycles/packet in NIC loopback mode.
> It simply gives the average cycles of IO used per packet without test
> equipment.
> When doing the test, make sure the link is UP.
Tested-by: Zhaochen Zhan
This patch has been verified on ixgbe and it is ready to be integ
32 matches
Mail list logo