[ovs-dev] [PATCHv3] lib: upgrade to DPDK v1.8.0

Pravin Shelar pshelar at nicira.com
Wed Mar 4 18:08:56 UTC 2015


On Tue, Feb 17, 2015 at 1:20 PM, Mark Kavanagh
<mark.b.kavanagh at intel.com> wrote:
> DPDK v1.8.0 makes significant changes to struct rte_mbuf, including
> removal of the 'pkt' and 'data' fields. The latter, formally a
> pointer, is now calculated via an offset from the start of the
> segment buffer. These fields are referenced by OVS when accessing
> the data section of an ofpbuf.
>
> The following changes are required to add support for DPDK 1.8:
> v3:
> - revert splitting of data across ofpbufs
> - use the mbuf's 'udata64' field to keep track of the mbuf's data
>   state (i.e. NULL/not NULL), and also to store the upper 16 bits
>   of the ofpbuf's data offset when that value is greater than
>   UINT16_MAX (i.e. the current limit for mbufs)
> - Update DPDK version to 1.8.0 for travis installation scripts and
>   INSTALL.DPDK.md
>
> v2:
> - split large amounts of data across multiple ofpbufs; with the
>   removal of the mbuf's 'data' pointer, and replacement with a
>   'data_off' field, it is necessary to limit the size of data
>   contained in an ofpbuf to UINT16_MAX when mbufs are used
>   (data_off and data_len are both of type uint16_t).
>   Were data not split across multiple ofpbufs, values larger
>   than UINT16_MAX for 'data_len' and 'data_off' would result
>   in wrap-around, and consequently, data corruption. Changes
>   introduced in this patch prevent this from occurring.
>
> v1:
> - update affected functions to use the correct rte_mbuf fields
> - remove init function from netdev-dpdk (no longer required as
>   rte_eal_pci_probe is now invoked from eal_init).
>
> Signed-off-by: Mark Kavanagh <mark.b.kavanagh at intel.com>
> Signed-off-by: Rory Sexton <rory.sexton at intel.com>
> Signed-off-by: Kevin Traynor <kevin.traynor at intel.com>
> ---

I fixed up code according to new dp_packet structure and pushed it to master.
Thanks.



More information about the dev mailing list