Currently, i40e supports only one MAC group. This means that no MAC clients (such as VNICs) can take advantage of HW classification because all traffic must travel through a single group. The goal of this task to implement multi-group support for i40e, specifically:
provide as many MAC groups as possible given the NICs resources
support multiple rings + RSS for each group (for now perhaps use the same number as ixgbe)
make sure that we still have a "default group" to send multicast traffic, or traffic for clients for which we couldn't get a dedicated group
Former user commented on 2018-11-20T12:43:17.369-0500:
I ran the following tests under DEBUG bits. I ran these tests on both X722 and X710 parts.
run dlsend/dlrecv between primary clients (in both directions)
run ping between primary clients (both directions)
rung iperf3 TCP + UDP between primary clients (both directions), verify Rx HW lanes
create VNIC and verify its assigned Rx HW group via dladm show-phys -H
run dlsend/dlrecv across VNIC (both directions)
run ping across VNIC (both directinos)
run iperf3 TCP + UDP across VNIC (both directions), verify Rx HW lanes
create VLAN VNIC
run dlsend/dlrecv across VLAN VNIC (both directions)
run ping across VLAN VNIC (both directions)
run iperf3 TCP + UDP across VLAN VNIC (both directions), no HW classification because that's future work in OS-6769#icft=OS-6769
create enough VNICs to eat all Rx HW groups, create one more VNIC which will be assigned to default Rx group, then verify traffic flows over this VNIC
Jira Bot commented on 2018-11-20T16:09:42.095-0500:
illumos-joyent commit 61dc3dec4f82a3e13e94609a0a83d5f66c64e760 (branch master, by Ryan Zezeski)
OS-6846#icft=OS-6846 want i40e multi-group support
OS-7372#icft=OS-7372 i40e_alloc_ring_mem() unwinds when it shouldn't
Reviewed by: Robert Mustacchi <rm@joyent.com>
Approved by: Robert Mustacchi <rm@joyent.com>