[ovs-dev] [branch 2.8 1/2] dp-packet: Refactor DPDK packet initialization.
Ben Pfaff
blp at ovn.org
Tue Sep 26 22:53:08 UTC 2017
On Mon, Sep 25, 2017 at 07:01:35PM -0700, Darrell Ball wrote:
> DPDK uses dp-packet pools and manages the mbuf portion of
> each packet. When a pool is created, partial initialization is
> also done on the OVS portion (i.e. non-mbuf). Since packet
> memory is reused, this is not very useful for transient
> fields and is also misleading. Furthermore, some of these
> transient fields are properly initialized for DPDK packets
> entering OVS anyways, which is the only reasonable way to do this.
> Another field, cutlen, is initialized in this manner in the pool
> and intended to be reset when cutlen is applied on sending the
> packet out. However, if cutlen context is set but the packet is
> not sent out for some reason, then the packet header would be
> corrupted in the memory pool. It is better to just reset the
> cutlen in the packets when received. I did not detect a
> degradation in performance, however, I would be willing to
> have some degradation, since this is a proper way to handle
> this. In addition to initializing cutlen in received packets,
> the other OVS transient fields are removed from the DPDK pool
> initialization.
>
> Acked-by: Sugesh Chandran <sugesh.chandran at intel.com>
> Signed-off-by: Darrell Ball <dlu998 at gmail.com>
Thanks, I applied both of these to branch-2.8.
More information about the dev
mailing list