Revert "e1000e: Separate signaling for link check/link up"
This reverts commit
da12d12f22819e43bae426bc74e166519d0ea5c8.
This reverts commit
4d62b732a29dfda9a8d6c7e4f56e32371d8b835c.
This reverts commit
d3604515c9eda464a92e8e67aae82dfe07fe3c98.
Commit
da12d12f2281 ("e1000e: Separate signaling for link check/link up")
changed what happens to the link status when there is an error which
happens after "get_link_status = false" in the copper check_for_link
callbacks. Previously, such an error would be ignored and the link
considered up. After that commit, any error implies that the link is down.
Revert commit
da12d12f2281 ("e1000e: Separate signaling for link check/link
up") and its followups. After reverting, the race condition described in
the log of commit
da12d12f2281 is reintroduced. It may still be triggered
by LSC events but this should keep the link down in case the link is
electrically unstable, as discussed. The race may no longer be
triggered by RXO events because commit
824544d0a38a ("e1000e: Avoid
receiver overrun interrupt bursts") restored reading icr in the Other
handler.
Link: https://lkml.org/lkml/2018/3/1/789
Signed-off-by: Benjamin Poirier <bpoirier@suse.com>
Acked-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>