net/vmxnet3: set packet type for fragmented packet
The packet type is set even if it is a fragmented packet. Tested, using testpmd, for different hardware versions on ESXi 7.0 Update 2. Signed-off-by: Pankaj Gupta <pagupta@vmware.com> Reviewed-by: Jochen Behrens <jbehrens@vmware.com>
This commit is contained in:
parent
ce6b0b80d1
commit
1c313c0e24
@ -759,6 +759,23 @@ vmxnet3_rx_offload(struct vmxnet3_hw *hw, const Vmxnet3_RxCompDesc *rcd,
|
|||||||
/* Check packet type, checksum errors, etc. */
|
/* Check packet type, checksum errors, etc. */
|
||||||
if (rcd->cnc) {
|
if (rcd->cnc) {
|
||||||
ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_UNKNOWN;
|
ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_UNKNOWN;
|
||||||
|
|
||||||
|
if (rcd->v4) {
|
||||||
|
packet_type |= RTE_PTYPE_L3_IPV4_EXT_UNKNOWN;
|
||||||
|
if (rcd->tcp)
|
||||||
|
packet_type |= RTE_PTYPE_L4_TCP;
|
||||||
|
else if (rcd->udp)
|
||||||
|
packet_type |= RTE_PTYPE_L4_UDP;
|
||||||
|
} else if (rcd->v6) {
|
||||||
|
packet_type |= RTE_PTYPE_L3_IPV6_EXT_UNKNOWN;
|
||||||
|
if (rcd->tcp)
|
||||||
|
packet_type |= RTE_PTYPE_L4_TCP;
|
||||||
|
else if (rcd->udp)
|
||||||
|
packet_type |= RTE_PTYPE_L4_UDP;
|
||||||
|
} else {
|
||||||
|
packet_type |= RTE_PTYPE_UNKNOWN;
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (rcd->v4) {
|
if (rcd->v4) {
|
||||||
packet_type |= RTE_PTYPE_L3_IPV4_EXT_UNKNOWN;
|
packet_type |= RTE_PTYPE_L3_IPV4_EXT_UNKNOWN;
|
||||||
|
Loading…
Reference in New Issue
Block a user