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

DPDK usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.dpdk.org/users/0 users/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 users users/ http://inbox.dpdk.org/users \
		users@dpdk.org
	public-inbox-index users

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.users


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git