Page MenuHomeFreeBSD

qlnxe: Fix setting unicast MAC filter of rx path
ClosedPublic

Authored by zlei on Mon, Jan 26, 6:31 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Feb 19, 11:27 PM
Unknown Object (File)
Mon, Feb 16, 8:59 PM
Unknown Object (File)
Mon, Feb 16, 1:26 PM
Unknown Object (File)
Tue, Feb 10, 9:21 PM
Unknown Object (File)
Mon, Feb 9, 3:02 AM
Unknown Object (File)
Sun, Feb 8, 4:53 PM
Unknown Object (File)
Wed, Feb 4, 3:12 PM
Unknown Object (File)
Wed, Feb 4, 1:13 AM
Subscribers

Details

Summary

When an Ethernet interface is added to lagg(4) as a child interface, its
type, aka if_type, is changed from IFT_ETHER to IFT_IEEE8023ADLAG. Well
changing the link-layer address of the lagg(4) interface will be
propagated to all child interfaces, hence the drivers of child interfaces
shall not presume the type of the interface will not be changed.

Meanwhile, on initializing, an ifnet has been fully attached and it is
guaranteed to have non-null link-layer address so stop NULL checking for
it.

Fixes: 792226e53023 qlnxe: Allow MAC address override
MFC after: 1 week

Test Plan

Put the interface ql0 as a member of lagg(4) interface, and set a random ether address.

The peer,

# ifconfig cxl0 inet 172.16.2.1/24

Our side,

# ifconfig lagg0 create
# ifconfig lagg0 laggport ql0
# ifconfig lagg0 ether random
# ifconfig lagg0 inet 172.16.2.2/24
# ping -c 172.16.2.1
PING 172.16.2.1 (172.16.2.1): 56 data bytes
64 bytes from 172.16.2.1: icmp_seq=0 ttl=64 time=0.113 ms

--- 172.16.2.1 ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.113/0.113/0.113/0.000 ms

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

zlei requested review of this revision.Mon, Jan 26, 6:31 AM
This revision is now accepted and ready to land.Fri, Feb 6, 6:13 AM