This race is horribly timing dependent. Adding diagnostics to track another problem slowed my system down enough to trip the race. The symptoms are that the card does not respond to its own MAC address. The race tends to occur under load when resetting the MAC filters. So it can occur with multicast changes, promiscuous mode and IPv6 which uses multicast.
Packets go out but nothing is received.
When set, indicates that the descriptor is owned by the 21143. When cleared, indicates that the descriptor is owned by the host. The 21143 clears this bit either when it completes the frame transmission or when the buffers allocated in the descriptor are empty. The ownership bit of the first descriptor of the frame should be set after all subsequent descriptors belonging to the same frame have been set. This avoids a possible race condition between the 21143 fetching a descriptor and the driver setting an ownership bit.