Module Name: src Committed By: msaitoh Date: Fri Aug 25 08:14:14 UTC 2023
Modified Files: src/sys/dev/pci: if_wm.c if_wmvar.h Log Message: Delay sending LINK_STATE_UP to prevent dropping packets on I35[04] and I21[01]. Some (not all) systems use I35[04] or I21[01] don't send packet soon after linkup. The MAC send a packet to the PHY and any error is not observed. This behavior causes a problem that gratuitous ARP and/or IPv6 DAD packet are silently dropped. To avoid this problem, don't call mii_pollstat() here which will send LINK_STATE_UP notification to the upper layer. Instead, mii_pollstat() will be called in wm_gmii_mediastatus() or mii_tick() will be called in wm_tick(). Note that the similar workaround is in Linux's igb driver though it's only for I21[01]. OK'd by hikaru@ and knakahara@. To generate a diff of this commit: cvs rdiff -u -r1.782 -r1.783 src/sys/dev/pci/if_wm.c cvs rdiff -u -r1.49 -r1.50 src/sys/dev/pci/if_wmvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.