[dpdk-dev] Bug in outgoing packet with vmxnet3 with VLAN tagging

Karmarkar Suyash skarmarkar at sonusnet.com
Fri Oct 10 14:46:57 CEST 2014


Hello All,

When a outgoing packet is sent with data Len more than 1514 which will be a case in VLAN (Max 1518 ) the packet is getting dropped because of the below code snippet. This looks incorrect as in case of VLAN .

FUNCTION NAME: vmxnet3_xmit_pkts

/* Needs to minus ether header len */
                                                if(txm->pkt.data_len > (hw->cur_mtu + ETHER_HDR_LEN)) {
                                                                PMD_TX_LOG(DEBUG, "Packet data_len higher than MTU\n");
                                                                rte_pktmbuf_free(tx_pkts[nb_tx]);
                                                                txq->stats.drop_total++;

                                                                nb_tx++;
                                                                continue;
                                                }


#define ETHER_ADDR_LEN  6 /**< Length of Ethernet address. */
#define ETHER_TYPE_LEN  2 /**< Length of Ethernet type field. */
#define ETHER_CRC_LEN   4 /**< Length of Ethernet CRC. */
#define ETHER_HDR_LEN   \
            (ETHER_ADDR_LEN * 2 + ETHER_TYPE_LEN) /**< Length of Ethernet header. */


But in case of VLAN the Ethernet header is 18 bytes. Does this mean we do not support VLAN for VMXNET3 PMD? Thanks.


Regards
Suyash Karmarkar


More information about the dev mailing list