[prev in list] [next in list] [prev in thread] [next in thread] 

List:       dpdk-dev
Subject:    [dpdk-dev] Avoid vlan tag stripped with I350 VF on VM
From:       shianwong () engreen ! us (Shian-Tung Wong)
Date:       2014-11-30 15:55:54
Message-ID: CAHs1tM5Z6+4jgU1N5Tm=Lcw7rz_BdzZPAn46f_r5_LLDJrO2_w () mail ! gmail ! com
[Download RAW message or body]

My application on a VM needs to deal with multiple VLANS on packets
received over I350 using Virtual Function. But I always see the received
packets without vlan tag.
This is my setup:
  - host: 3.13.6-031306-generic
  - guest: 2.6.32-358.el6.x86_64
  - dpdk: 1.6

And this is how I set up in the VM:
-------
    memset(&port_conf, 0, sizeof(port_conf));
    if (vlanCnt > 0)
         port_conf.rxmode.hw_vlan_filter = 1;

    port_conf.rxmode.jumbo_frame = 1;
    port_conf.rxmode.max_rx_pkt_len = 9018;

    ret = rte_eth_dev_configure(port, 1, 1, &port_conf);
    if (ret < 0) {
        rte_log(RTE_LOG_CRIT, RTE_LOGTYPE_EAL, "Error on config port%u,
ret=%d\n",
                    (unsigned)port, ret);
        return -1;
    }

    for(i = 0; i < vlanCnt; i++) {
        ret = rte_eth_dev_vlan_filter(port, vlan[i], 1);
        if (ret < 0) {
            rte_log(RTE_LOG_CRIT, RTE_LOGTYPE_EAL, "Error on config port%u,
vlan%d ret=%d\n",
                    (unsigned)port, vlan[i], ret);
            return -1;
        }
    }
-----

If I also try to explicitly disable the stripping with next, but get an
error return -ENOSUP.

ret = rte_eth_dev_set_vlan_strip_on_queue(port, 0, 0);


I appreciate anyone can help. on how to set it up.
Thanks,
Shian Wong

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic