Module Name: src Committed By: martin Date: Mon Sep 4 17:57:50 UTC 2023
Modified Files: src/sys/dev/pci [netbsd-8]: if_wm.c if_wmvar.h Log Message: Pull up following revision(s) (requested by msaitoh in ticket #1894): sys/dev/pci/if_wmvar.h: revision 1.50 sys/dev/pci/if_wm.c: revision 1.783,1.784 via patch 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@. Fix #ifdef WM_DEBUG code in wm_gmii_i82544_{read,write}reg_locked. To generate a diff of this commit: cvs rdiff -u -r1.508.4.50 -r1.508.4.51 src/sys/dev/pci/if_wm.c cvs rdiff -u -r1.33.6.10 -r1.33.6.11 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.