Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tbogendoerfer@suse.de>2019-11-05 14:08:48 +0100
committerThomas Bogendoerfer <tbogendoerfer@suse.de>2019-11-05 14:09:58 +0100
commitcee6533c527801a4adf488b7bf8679f943a4d293 (patch)
tree987579c0eb8b4b19f5f3f3e6e0d55e6e1bcf75e6
parentd9fe35a7183fdbac8668f6675408432f01556cb5 (diff)
igb: Fix constant media auto sense switching when no cable is
connected (jsc#SLE-7967 jsc#SLE-8010).
-rw-r--r--patches.suse/igb-Fix-constant-media-auto-sense-switching-when-no-.patch41
-rw-r--r--series.conf1
2 files changed, 42 insertions, 0 deletions
diff --git a/patches.suse/igb-Fix-constant-media-auto-sense-switching-when-no-.patch b/patches.suse/igb-Fix-constant-media-auto-sense-switching-when-no-.patch
new file mode 100644
index 0000000000..610540f06f
--- /dev/null
+++ b/patches.suse/igb-Fix-constant-media-auto-sense-switching-when-no-.patch
@@ -0,0 +1,41 @@
+From: Manfred Rudigier <manfred.rudigier@omicronenergy.com>
+Date: Thu, 15 Aug 2019 13:55:20 -0700
+Subject: igb: Fix constant media auto sense switching when no cable is
+ connected
+Patch-mainline: v5.4-rc6
+Git-commit: 8d5cfd7f76a2414e23c74bb8858af7540365d985
+References: jsc#SLE-7967 jsc#SLE-8010
+
+At least on the i350 there is an annoying behavior that is maybe also
+present on 82580 devices, but was probably not noticed yet as MAS is not
+widely used.
+
+If no cable is connected on both fiber/copper ports the media auto sense
+code will constantly swap between them as part of the watchdog task and
+produce many unnecessary kernel log messages.
+
+The swap code responsible for this behavior (switching to fiber) should
+not be executed if the current media type is copper and there is no signal
+detected on the fiber port. In this case we can safely wait until the
+AUTOSENSE_EN bit is cleared.
+
+Signed-off-by: Manfred Rudigier <manfred.rudigier@omicronenergy.com>
+Tested-by: Aaron Brown <aaron.f.brown@intel.com>
+Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
+Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
+---
+ drivers/net/ethernet/intel/igb/igb_main.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/net/ethernet/intel/igb/igb_main.c
++++ b/drivers/net/ethernet/intel/igb/igb_main.c
+@@ -2065,7 +2065,8 @@ static void igb_check_swap_media(struct
+ if ((hw->phy.media_type == e1000_media_type_copper) &&
+ (!(connsw & E1000_CONNSW_AUTOSENSE_EN))) {
+ swap_now = true;
+- } else if (!(connsw & E1000_CONNSW_SERDESD)) {
++ } else if ((hw->phy.media_type != e1000_media_type_copper) &&
++ !(connsw & E1000_CONNSW_SERDESD)) {
+ /* copper signal takes time to appear */
+ if (adapter->copper_tries < 4) {
+ adapter->copper_tries++;
diff --git a/series.conf b/series.conf
index 8d801caa3e..96d8f87e18 100644
--- a/series.conf
+++ b/series.conf
@@ -2892,6 +2892,7 @@
patches.suse/tcp-increase-tcp_max_syn_backlog-max-value.patch
patches.suse/igb-igc-Don-t-warn-on-fatal-read-failures-when-the-d.patch
patches.suse/igb-Enable-media-autosense-for-the-i350.patch
+ patches.suse/igb-Fix-constant-media-auto-sense-switching-when-no-.patch
patches.suse/powerpc-powernv-Fix-CPU-idle-to-be-called-with-IRQs-.patch
patches.suse/scsi-qla2xxx-fixup-incorrect-usage-of-host_byte.patch
patches.suse/scsi-lpfc-Check-queue-pointer-before-use.patch