DPDK usage discussions
 help / color / mirror / Atom feed
* [dpdk-users] Configuring VLAN on SRIOV VF X553 SFP+
@ 2021-08-23 10:10 Renata Saiakhova
  0 siblings, 0 replies; only message in thread
From: Renata Saiakhova @ 2021-08-23 10:10 UTC (permalink / raw)
  To: users

Hello all,

I use X553 SFP+ port to configure SRIOV mode. In the dpdk application, a vlan interface is configured on a VF, and vlan filter table is configured appropriately. All unicast packets are passed to/from the application without any issue, however, multicast packets are filtered out by PF (the last statement is my conclusion, as soon as promisc mode is enabled on PF, all works fine).
VF is configured additionally to be in promisc mode and in allmulti. Are there any limitations on using vlan on SRIOV VF?
Below is the output of eth_dev->data:

rx_mbuf_alloc_failed = 0, mac_addrs = 0x10ea7f200, mac_pool_sel = {0 <repeats 128 times>}, hash_mac_addrs = 0x0, port_id = 2, promiscuous= 1 '\001',
  scattered_rx = 1 '\001', all_multicast= 1 '\001', dev_started = 1 '\001', lro = 0 '\000', rx_queue_state = '\000' <repeats 1023 times>,
  tx_queue_state = '\000' <repeats 1023 times>, dev_flags = 64, numa_node = 0, vlan_filter_conf= {ids = {1024, 0 <repeats 63 times>}},

More detailed:
(gdb) p *rte_eth_devices[2].data
$3 = {name = "05:10.1", '\000' <repeats 56 times>, rx_queues = 0x1118ff400, tx_queues = 0x1118ff340, nb_rx_queues = 2, nb_tx_queues = 2, sriov = {active = 0 '\000',
    nb_q_per_pool = 0 '\000', def_vmdq_idx = 0, def_pool_q_idx = 0}, dev_private = 0x10ea7f580, dev_link = {link_speed = 0, link_duplex = 0, link_autoneg = 1,
    link_status = 0}, dev_conf = {link_speeds = 0, rxmode = {mq_mode = ETH_MQ_RX_RSS, max_rx_pkt_len = 9728, max_lro_pkt_size = 0, split_hdr_size = 0, offloads = 535041,
      reserved_64s = {0, 0}, reserved_ptrs = {0x0, 0x0}}, txmode = {mq_mode = ETH_MQ_TX_NONE, offloads = 32768, pvid = 0, hw_vlan_reject_tagged = 0 '\000',
      hw_vlan_reject_untagged = 0 '\000', hw_vlan_insert_pvid = 0 '\000', reserved_64s = {0, 0}, reserved_ptrs = {0x0, 0x0}}, lpbk_mode = 0, rx_adv_conf = {rss_conf = {
        rss_key = 0x0, rss_key_len = 0 '\000', rss_hf = 232756}, vmdq_dcb_conf = {nb_queue_pools = (unknown: 0), enable_default_pool = 0 '\000', default_pool = 0 '\000',
        nb_pool_maps = 0 '\000', pool_map = {{vlan_id = 0, pools = 0} <repeats 64 times>}, dcb_tc = "\000\000\000\000\000\000\000"}, dcb_rx_conf = {nb_tcs = (unknown: 0),
        dcb_tc = "\000\000\000\000\000\000\000"}, vmdq_rx_conf = {nb_queue_pools = (unknown: 0), enable_default_pool = 0 '\000', default_pool = 0 '\000',
        enable_loop_back = 0 '\000', nb_pool_maps = 0 '\000', rx_mode = 0, pool_map = {{vlan_id = 0, pools = 0} <repeats 64 times>}}}, tx_adv_conf = {vmdq_dcb_tx_conf = {
        nb_queue_pools = (unknown: 0), dcb_tc = "\000\000\000\000\000\000\000"}, dcb_tx_conf = {nb_tcs = (unknown: 0), dcb_tc = "\000\000\000\000\000\000\000"},
      vmdq_tx_conf = {nb_queue_pools = (unknown: 0)}}, dcb_capability_en = 0, fdir_conf = {mode = RTE_FDIR_MODE_NONE, pballoc = RTE_FDIR_PBALLOC_64K,
      status = RTE_FDIR_NO_REPORT_STATUS, drop_queue = 0 '\000', mask = {vlan_tci_mask = 0, ipv4_mask = {src_ip = 0, dst_ip = 0, tos = 0 '\000', ttl = 0 '\000',
          proto = 0 '\000'}, ipv6_mask = {src_ip = {0, 0, 0, 0}, dst_ip = {0, 0, 0, 0}, tc = 0 '\000', proto = 0 '\000', hop_limits = 0 '\000'}, src_port_mask = 0,
        dst_port_mask = 0, mac_addr_byte_mask = 0 '\000', tunnel_id_mask = 0, tunnel_type_mask = 0 '\000'}, flex_conf = {nb_payloads = 0, nb_flexmasks = 0, flex_set = {{
            type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {
            type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {
            type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {
            type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}, {type = RTE_ETH_PAYLOAD_UNKNOWN, src_offset = {0 <repeats 16 times>}}}, flex_mask = {{
            flow_type = 0, mask = '\000' <repeats 15 times>} <repeats 24 times>}}}, intr_conf = {lsc = 0, rxq = 0, rmv = 0}}, mtu = 1500, min_rx_buf_size = 2176,
  rx_mbuf_alloc_failed = 0, mac_addrs = 0x10ea7f200, mac_pool_sel = {0 <repeats 128 times>}, hash_mac_addrs = 0x0, port_id = 2, promiscuous = 1 '\001',
  scattered_rx = 1 '\001', all_multicast = 1 '\001', dev_started = 1 '\001', lro = 0 '\000', rx_queue_state = '\000' <repeats 1023 times>,
  tx_queue_state = '\000' <repeats 1023 times>, dev_flags = 64, numa_node = 0, vlan_filter_conf = {ids = {1024, 0 <repeats 63 times>}}, owner = {id = 0,
    name = '\000' <repeats 63 times>}, representor_id = 0, flow_ops_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0,
      __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}, reserved_64s = {0, 0, 0, 0}, reserved_ptrs = {0x0, 0x0, 0x0,
    0x0}}

What am I missing in my config to make it work for multicast packets?

Kind regards,
Renata



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-08-23 10:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-23 10:10 [dpdk-users] Configuring VLAN on SRIOV VF X553 SFP+ Renata Saiakhova

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).