sky2 ethernet card link not up after suspend

Bug #1809843 reported by Mike Boruta
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
Bionic
Fix Released
Undecided
Unassigned
Cosmic
Fix Committed
Undecided
Unassigned
Disco
Fix Released
Undecided
Unassigned

Bug Description

Issue is as described by the user 'kris' in #1798921 (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1798921).

Sometimes when bringing my laptop up from suspended state my Ethernet card shows link connection and activity via port LEDs but ethtool indicates the link is not up. This does not happen every time I resume from suspend, about one in 5 times. When it does happen, the following additional message is present in my dmesg output:

[ 686.804877] do_IRQ: 1.37 No irq handler for vector

The lspci -vvnn output for the Ethernet card is:

02:00.0 Ethernet controller [0200]: Marvell Technology Group Ltd. 88E8057 PCI-E Gigabit Ethernet Controller [11ab:4380] (rev 10)
 Subsystem: Acer Incorporated [ALI] 88E8057 PCI-E Gigabit Ethernet Controller [1025:028e]
 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+
 Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+
 Latency: 0, Cache Line Size: 64 bytes
 Interrupt: pin A routed to IRQ 27
 Region 0: Memory at f3000000 (64-bit, non-prefetchable) [size=16K]
 Region 2: I/O ports at 3000 [size=256]
 [virtual] Expansion ROM at f3020000 [disabled] [size=128K]
 Capabilities: [48] Power Management version 3
  Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
  Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
 Capabilities: [50] Vital Product Data
  Product Name: Marvell Yukon 88E8057 Gigabit Ethernet Controller
  Read-only fields:
   [PN] Part number: Yukon 88E8057
   [EC] Engineering changes: Rev. 1.1
   [MN] Manufacture ID: 4d 61 72 76 65 6c 6c
   [SN] Serial number: AbCdEfG5B3D09
   [CP] Extended capability: 01 10 cc 03
   [RV] Reserved: checksum good, 9 byte(s) reserved
  Read/write fields:
   [RW] Read-write area: 121 byte(s) free
  End
 Capabilities: [5c] MSI: Enable+ Count=1/1 Maskable- 64bit+
  Address: 00000000fee02004 Data: 4025
 Capabilities: [c0] Express (v2) Legacy Endpoint, MSI 00
  DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
   ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
  DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
   RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
   MaxPayload 128 bytes, MaxReadReq 512 bytes
  DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend-
  LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <1us, L1 <32us
   ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp-
  LnkCtl: ASPM L1 Enabled; RCB 128 bytes Disabled- CommClk+
   ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
  LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
  DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR-, OBFF Not Supported
  DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
  LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
    Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
    Compliance De-emphasis: -6dB
  LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
    EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
 Capabilities: [100 v1] Advanced Error Reporting
  UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
  UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
  UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
  CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
  CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
  AERCap: First Error Pointer: 1f, GenCap- CGenEn- ChkCap- ChkEn-
 Capabilities: [130 v1] Device Serial Number 09-3d-5b-ff-ff-2d-26-00
 Kernel driver in use: sky2
 Kernel modules: sky2

The kernel I am running is 4.15.0-42-generic #45 (slightly modified such that CONFIG_X86_ACPI_CPUFREQ is compiled as a module). Using Ubuntu 18.04.

I am creating this bug report as a result of the comment: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1798921/comments/34, in the hopes that this specific card will be added to the relevant MSI quirks table. If I do not suffer from the same issue as kris in the above linked issue, I will be happy to provide any additional information, test fixes etc. I would like to avoid using the 'pci=nomsi,noaer' workaround he mentioned if possible.
---
ProblemType: Bug
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/pcmC0D0c: maridius 2260 F...m pulseaudio
 /dev/snd/controlC0: maridius 2260 F.... pulseaudio
CurrentDesktop: Unity:Unity7:ubuntu
DistroRelease: Ubuntu 18.04
HibernationDevice: RESUME=UUID=0840edd3-6052-4916-bcc2-4c5b13edb862
InstallationDate: Installed on 2015-09-01 (1212 days ago)
InstallationMedia: Ubuntu 14.04 LTS "Trusty Tahr" - Release amd64 (20140417)
MachineType: Gateway P-79
NonfreeKernelModules: nvidia
Package: linux (not installed)
ProcFB: 0 VESA VGA
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-42-generic root=UUID=ad05ff21-9786-4f03-8641-85f2f416363d ro quiet splash vt.handoff=1
ProcVersionSignature: Ubuntu 4.15.0-42.45+PHC-generic 4.15.18
RelatedPackageVersions:
 linux-restricted-modules-4.15.0-42-generic N/A
 linux-backports-modules-4.15.0-42-generic N/A
 linux-firmware 1.173.2
Tags: bionic
Uname: Linux 4.15.0-42-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo vboxusers
_MarkForUpload: True
dmi.bios.date: 09/30/2009
dmi.bios.vendor: Phoenix Technologies LTD
dmi.bios.version: 79.07.00
dmi.board.name: Godzilla-N10
dmi.board.vendor: Gateway
dmi.board.version: Rev
dmi.chassis.type: 10
dmi.chassis.vendor: Gateway
dmi.chassis.version: N/A
dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvr79.07.00:bd09/30/2009:svnGateway:pnP-79:pvr0100:rvnGateway:rnGodzilla-N10:rvrRev:cvnGateway:ct10:cvrN/A:
dmi.product.name: P-79
dmi.product.version: 0100
dmi.sys.vendor: Gateway

Revision history for this message
Mike Boruta (maridius) wrote :
Revision history for this message
Mike Boruta (maridius) wrote :
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1809843

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: bionic
Revision history for this message
Mike Boruta (maridius) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Mike Boruta (maridius) wrote : CRDA.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : IwConfig.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : Lspci.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : Lsusb.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : ProcEnviron.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : ProcModules.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : PulseList.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : RfKill.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : UdevDb.txt

apport information

Revision history for this message
Mike Boruta (maridius) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Mike Boruta (maridius) wrote :

Is there any more information I can add to help debug this issue?

Revision history for this message
Jeremy (wa113y3s) wrote :

In terminal try

echo "options sky2 disable_msi=1" | sudo tee /etc/modprobe.d/sky2.conf
sudo modprobe -r sky2
sudo modprobe sky2

Then test it

Revision history for this message
Mike Boruta (maridius) wrote :

Thank you for your response, this seems to do the trick. I was worried that disabling MSI would decrease networking performance, but a simple iperf3 test comparison showed no difference. Long term it seems that this should be handled in the kernel driver code (according to https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1798921/comments/34).

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Please test the kernel without the "disable_msi" options:
https://people.canonical.com/~khfeng/linux-lp1807259-sky2-msi/

Revision history for this message
Mike Boruta (maridius) wrote :

Thank you very much for the kernel Feng, and sorry for the late response. I tested it as instructed and it works! Performed close to 20 suspend/start cycles without issue; before I would get a failure around every 3 runs.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :
Changed in linux (Ubuntu Disco):
status: Confirmed → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (10.9 KiB)

This bug was fixed in the package linux - 5.0.0-8.9

---------------
linux (5.0.0-8.9) disco; urgency=medium

  * linux: 5.0.0-8.9 -proposed tracker (LP: #1819759)

  * hisi_sas: add debugfs support (LP: #1819500)
    - scsi: hisi_sas: Create root and device debugfs directories
    - scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers
    - scsi: hisi_sas: Take debugfs snapshot for all regs
    - scsi: hisi_sas: Debugfs global register create file and add file operations
    - scsi: hisi_sas: Add debugfs for port registers
    - scsi: hisi_sas: Add debugfs CQ file and add file operations
    - scsi: hisi_sas: Add debugfs DQ file and add file operations
    - scsi: hisi_sas: Add debugfs IOST file and add file operations
    - scsi: hisi_sas: No need to check return value of debugfs_create functions
    - scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs
      code
    - scsi: hisi_sas: Add debugfs ITCT file and add file operations

  * [disco] hns driver updates from 5.1 merge window (LP: #1819535)
    - net: hns: Use struct_size() in devm_kzalloc()
    - net: hns3: modify enet reinitialization interface
    - net: hns3: remove unused member in struct hns3_enet_ring
    - net: hns3: remove unnecessary hns3_adjust_tqps_num
    - net: hns3: reuse reinitialization interface in the hns3_set_channels
    - net: hns3: add interface hclge_tm_bp_setup
    - net: hns3: modify parameter checks in the hns3_set_channels
    - net: hns3: remove redundant codes in hclge_knic_setup
    - net: hns3: fix user configuration loss for ethtool -L
    - net: hns3: adjust the use of alloc_tqps and num_tqps
    - net: hns3: fix wrong combined count returned by ethtool -l
    - net: hns3: do reinitialization while ETS configuration changed
    - net: hns3: add HNAE3_RESTORE_CLIENT interface in enet module
    - net: hns3: add calling roce callback function when link status change
    - net: hns3: add rx multicast packets statistic
    - net: hns3: refactor the statistics updating for netdev
    - net: hns3: fix rss configuration lost problem when setting channel
    - net: hns3: fix for shaper not setting when TC num changes
    - net: hns3: fix bug of ethtool_ops.get_channels for VF
    - net: hns3: clear param in ring when free ring
    - net: hns3: Change fw error code NOT_EXEC to NOT_SUPPORTED
    - net: hns3: do not return GE PFC setting err when initializing
    - net: hns3: add ETS TC weight setting in SSU module
    - net: hns3: add statistics for PFC frames and MAC control frames
    - net: hns3: fix PFC not setting problem for DCB module
    - net: hns3: don't update packet statistics for packets dropped by hardware
    - net: hns3: clear pci private data when unload hns3 driver
    - net: hns3: add error handling in hclge_ieee_setets
    - net: hns3: fix return value handle issue for hclge_set_loopback()
    - net: hns3: fix broadcast promisc issue for revision 0x20
    - net: hns3: After setting the loopback, add the status of getting MAC
    - net: hns3: do reinitialization while mqprio configuration changed
    - net: hns3: remove dcb_ops->map_update in hclge_dcb
    - net: hns3: call hns3_nic_set_real_num_queue ...

Changed in linux (Ubuntu Disco):
status: Fix Committed → Fix Released
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'. If the problem still exists, change the tag 'verification-needed-xenial' to 'verification-failed-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-xenial
Revision history for this message
Mike Boruta (maridius) wrote :

I have attempted to test the kernel mentioned above and have not been able to; I enabled the given repo, installed the packages linux-image-5.0.0-8-generic, linux-headers-5.0.0-8, linux-headers-5.0.0-8-generic and linux-modules-5.0.0-8-generic and upon reboot was not able to start gdm. Fine, my nvidia modules failed to recompile for the new kernel, but when attempting to start networking I found that the sky2 kernel module was not present on my system. Indeed, linux-modules-5.0.0-8-generic does not contain sky2, even though it is built as a module according to the kernel config. Am I missing something? How do you suggest I test these changes?

Also, why is this titled 'verification-needed-xenial' and not 'verification-needed-bionic'?

Revision history for this message
Kleber Sacilotto de Souza (kleber-souza) wrote :

Hi Mike,

The verification comment was added referring to Xenial because the fix for this issue ("sky2: Disable MSI on Dell Inspiron 1545 and Gateway P-79") has been committed to Xenial kernel as part of the 4.4.177 upstream stable update (bug 1822271).

The 5.0 kernel is from the Disco series, which is currently under development. Bionic hasn't received this fix because no SRU request has been submitted for it yet.

Kai-Heng Feng,

Are you going to submit a SRU request for this bug for Bionic (and possibly Cosmic too)?

Changed in linux (Ubuntu Bionic):
status: New → Triaged
Changed in linux (Ubuntu Cosmic):
status: New → Triaged
Changed in linux (Ubuntu Bionic):
assignee: nobody → Kai-Heng Feng (kaihengfeng)
Changed in linux (Ubuntu Bionic):
assignee: Kai-Heng Feng (kaihengfeng) → nobody
Changed in linux (Ubuntu Bionic):
status: Triaged → Fix Committed
status: Fix Committed → In Progress
Changed in linux (Ubuntu Cosmic):
status: Triaged → In Progress
Changed in linux (Ubuntu Bionic):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Cosmic):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-cosmic' to 'verification-done-cosmic'. If the problem still exists, change the tag 'verification-needed-cosmic' to 'verification-failed-cosmic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-cosmic
tags: added: verification-needed-bionic
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

Mike Boruta (maridius)
tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
Mike Boruta (maridius) wrote :

I verified the proposed kernel for bionic, all good, no issue over 10 trials. Since I am only running bionic on this laptop I will not test xenial and cosmos unless instructed otherwise. Thank you very much everyone for your help!

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (11.2 KiB)

This bug was fixed in the package linux - 4.15.0-55.60

---------------
linux (4.15.0-55.60) bionic; urgency=medium

  * linux: 4.15.0-55.60 -proposed tracker (LP: #1834954)

  * Request backport of ceph commits into bionic (LP: #1834235)
    - ceph: use atomic_t for ceph_inode_info::i_shared_gen
    - ceph: define argument structure for handle_cap_grant
    - ceph: flush pending works before shutdown super
    - ceph: send cap releases more aggressively
    - ceph: single workqueue for inode related works
    - ceph: avoid dereferencing invalid pointer during cached readdir
    - ceph: quota: add initial infrastructure to support cephfs quotas
    - ceph: quota: support for ceph.quota.max_files
    - ceph: quota: don't allow cross-quota renames
    - ceph: fix root quota realm check
    - ceph: quota: support for ceph.quota.max_bytes
    - ceph: quota: update MDS when max_bytes is approaching
    - ceph: quota: add counter for snaprealms with quota
    - ceph: avoid iput_final() while holding mutex or in dispatch thread

  * QCA9377 isn't being recognized sometimes (LP: #1757218)
    - SAUCE: USB: Disable USB2 LPM at shutdown

  * hns: fix ICMP6 neighbor solicitation messages discard problem (LP: #1833140)
    - net: hns: fix ICMP6 neighbor solicitation messages discard problem
    - net: hns: fix unsigned comparison to less than zero

  * Fix occasional boot time crash in hns driver (LP: #1833138)
    - net: hns: Fix probabilistic memory overwrite when HNS driver initialized

  * use-after-free in hns_nic_net_xmit_hw (LP: #1833136)
    - net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw()

  * hns: attempt to restart autoneg when disabled should report error
    (LP: #1833147)
    - net: hns: Restart autoneg need return failed when autoneg off

  * systemd 237-3ubuntu10.14 ADT test failure on Bionic ppc64el (test-seccomp)
    (LP: #1821625)
    - powerpc: sys_pkey_alloc() and sys_pkey_free() system calls
    - powerpc: sys_pkey_mprotect() system call

  * [UBUNTU] pkey: Indicate old mkvp only if old and curr. mkvp are different
    (LP: #1832625)
    - pkey: Indicate old mkvp only if old and current mkvp are different

  * [UBUNTU] kernel: Fix gcm-aes-s390 wrong scatter-gather list processing
    (LP: #1832623)
    - s390/crypto: fix gcm-aes-s390 selftest failures

  * System crashes on hot adding a core with drmgr command (4.15.0-48-generic)
    (LP: #1833716)
    - powerpc/numa: improve control of topology updates
    - powerpc/numa: document topology_updates_enabled, disable by default

  * Kernel modules generated incorrectly when system is localized to a non-
    English language (LP: #1828084)
    - scripts: override locale from environment when running recordmcount.pl

  * [UBUNTU] kernel: Fix wrong dispatching for control domain CPRBs
    (LP: #1832624)
    - s390/zcrypt: Fix wrong dispatching for control domain CPRBs

  * CVE-2019-11815
    - net: rds: force to destroy connection if t_sock is NULL in
      rds_tcp_kill_sock().

  * Sound device not detected after resume from hibernate (LP: #1826868)
    - drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled
    - drm/i915: Save the old CDCLK atomic state
...

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
Brad Figg (brad-figg)
tags: added: cscc
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.