[dpdk-dev] vmxnet3 ethernet driver

Mukunda Naresh mukundanaresh87 at gmail.com
Thu Sep 14 13:32:44 CEST 2017


Hi All,

Need your inputs on below functions.

Vmxnet3 driver in dpdk does not have the whitelist filter for unicast mac
addresses. So addition/removal of MAC addresses using
rte_eth_dev_mac_addr_add and rte_eth_dev_mac_addr_remove will always fail
in case of vmxnet3. These functions will always return -95 (or -ENOTSUP).



2.2.0-r0/dpdk-2.2.0/drivers/net/vmxnet3/vmxnet3_ethdev.c

static const struct eth_dev_ops vmxnet3_eth_dev_ops = {

    .dev_configure        = vmxnet3_dev_configure,

    .dev_start            = vmxnet3_dev_start,

    .dev_stop             = vmxnet3_dev_stop,

    .dev_close            = vmxnet3_dev_close,

    .promiscuous_enable   = vmxnet3_dev_promiscuous_enable,

    .promiscuous_disable  = vmxnet3_dev_promiscuous_disable,

    .allmulticast_enable  = vmxnet3_dev_allmulticast_enable,

    .allmulticast_disable = vmxnet3_dev_allmulticast_disable,

    .link_update          = vmxnet3_dev_link_update,

    .stats_get            = vmxnet3_dev_stats_get,

    .dev_infos_get        = vmxnet3_dev_info_get,

    .vlan_filter_set      = vmxnet3_dev_vlan_filter_set,

    .vlan_offload_set     = vmxnet3_dev_vlan_offload_set,

    .rx_queue_setup       = vmxnet3_dev_rx_queue_setup,

    .rx_queue_release     = vmxnet3_dev_rx_queue_release,

    .tx_queue_setup       = vmxnet3_dev_tx_queue_setup,

    .tx_queue_release     = vmxnet3_dev_tx_queue_release,

};

2.2.0-r0/dpdk-2.2.0/drivers/net/virtio/virtio_ethdev.c

static const struct eth_dev_ops virtio_eth_dev_ops = {

    .dev_configure           = virtio_dev_configure,

    .dev_start               = virtio_dev_start,

    .dev_stop                = virtio_dev_stop,

    .dev_close               = virtio_dev_close,

    .promiscuous_enable      = virtio_dev_promiscuous_enable,

    .promiscuous_disable     = virtio_dev_promiscuous_disable,

    .allmulticast_enable     = virtio_dev_allmulticast_enable,

    .allmulticast_disable    = virtio_dev_allmulticast_disable,


    .dev_infos_get           = virtio_dev_info_get,

    .stats_get               = virtio_dev_stats_get,

    .xstats_get              = virtio_dev_xstats_get,

    .stats_reset             = virtio_dev_stats_reset,

    .xstats_reset            = virtio_dev_stats_reset,

    .link_update             = virtio_dev_link_update,

    .rx_queue_setup          = virtio_dev_rx_queue_setup,

    .rx_queue_release        = virtio_dev_rx_queue_release,

    .tx_queue_setup          = virtio_dev_tx_queue_setup,

    .tx_queue_release        = virtio_dev_tx_queue_release,

    /* collect stats per queue */

    .queue_stats_mapping_set = virtio_dev_queue_stats_mapping_set,

    .vlan_filter_set         = virtio_vlan_filter_set,

    .mac_addr_add            = virtio_mac_addr_add,

    .mac_addr_remove         = virtio_mac_addr_remove,

    .mac_addr_set            = virtio_mac_addr_set,

};


Regards
Mukunda Naresh


More information about the dev mailing list