Bluetooth & USB interrupt suspended state on Surface Pro 3

Bug #1436620 reported by Keith McClelland
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Medium
Unassigned

Bug Description

[Please note: this information was collected using 3.16.0-33 but actually is talking about behavior under 4.0.0-RC4 with four specific patches described at the end of the note.]

1. When suspending (i.e. freezing in this situation), it is never certain that it will stay suspended. About half the time it simply bounces back in the same way that suspending without the freeze patch does.

2. If Bluetooth is on or if a Gigaware USB hub is connected to a USB port, the freeze never seems to last very long. It doesn't always bounce right back but it usually comes back within a few minutes. (I have the latest version of mwifiex firmware.) Not all USB devices cause this problem; e.g. I have a Microsoft wireless keyboard and mouse with a tiny USB transceiver that does not affect suspension.

----

The patches are:

- (not involved) The addition of the two Microsoft cameras in the kernel, drivers/media/usb/uvc/uvc_driver.c.

- (not involved) The acpi battery-detecting patch described in kernel bugzilla bug 90161.

- Modification of /usr/lib/pm-utils/pm-functions as described in Launchpad bug 1380076 to use the "freeze" methodology for suspending. Without this modification all attempts at suspending bounce back immediately; thus the behavior described in this bug cannot be observed.

- The "surface_buttons.c" patch described in kernel bugzilla bug 84651; without this it is nearly impossible to get out of a freeze once you've gotten into it.

ProblemType: Bug
DistroRelease: Ubuntu 14.10
Package: linux-image-3.16.0-33-generic 3.16.0-33.44
ProcVersionSignature: Ubuntu 3.16.0-33.44-generic 3.16.7-ckt7
Uname: Linux 3.16.0-33-generic x86_64
ApportVersion: 2.14.7-0ubuntu8.2
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC2: keith 2741 F.... pulseaudio
 /dev/snd/controlC0: keith 2741 F.... pulseaudio
 /dev/snd/controlC1: keith 2741 F.... pulseaudio
CurrentDesktop: Unity
Date: Wed Mar 25 20:17:17 2015
HibernationDevice: RESUME=UUID=a84237b2-3192-4b08-a535-d5561688b546
InstallationDate: Installed on 2015-01-05 (79 days ago)
InstallationMedia: Ubuntu 14.10 "Utopic Unicorn" - Release amd64 (20141022.1)
MachineType: Microsoft Corporation Surface Pro 3
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.16.0-33-generic.efi.signed root=UUID=07a2b8fb-d17a-4e67-a4d5-39ece3561dc4 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.16.0-33-generic N/A
 linux-backports-modules-3.16.0-33-generic N/A
 linux-firmware 1.138.1
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 11/19/2014
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 3.11.0450
dmi.board.asset.tag: 0
dmi.board.name: Surface Pro 3
dmi.board.vendor: Microsoft Corporation
dmi.board.version: 1
dmi.chassis.asset.tag: 0
dmi.chassis.type: 9
dmi.chassis.vendor: Microsoft Corporation
dmi.chassis.version: 1
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr3.11.0450:bd11/19/2014:svnMicrosoftCorporation:pnSurfacePro3:pvr1:rvnMicrosoftCorporation:rnSurfacePro3:rvr1:cvnMicrosoftCorporation:ct9:cvr1:
dmi.product.name: Surface Pro 3
dmi.product.version: 1
dmi.sys.vendor: Microsoft Corporation

Revision history for this message
Keith McClelland (zismylaptop) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Keith McClelland, thank you for reporting this and helping make Ubuntu better. Could you please test the latest upstream kernel available (4.0-rc5) following https://wiki.ubuntu.com/KernelMainlineBuilds ? It will allow additional upstream developers to examine the issue.

Once you've tested the upstream kernel, please comment on which kernel version specifically you tested. If this bug is fixed in the mainline kernel, please add the following tags by clicking on the yellow circle with a black pencil icon, next to the word Tags, located at the bottom of the report description:
kernel-fixed-upstream
kernel-fixed-upstream-3.XY-rcZ

Where XY and Z are numbers corresponding to the kernel version.

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-3.XY-rcZ

Once testing of the upstream kernel is complete, please mark this bug's Status as Confirmed. Please let us know your results.

Thank you for your understanding.

tags: added: latest-bios-3.11.0450
removed: bluetooth
Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
Revision history for this message
Keith McClelland (zismylaptop) wrote :

I tested with Linux version 4.0.0-040000rc6-generic using the pm_functions as modified by Launchpad bug 1380076. This is not a perfectly clean bug in that it sometimes bounces back from freeze even without BT being on and it can go a long time with BT on. But definitely BT makes the freeze less reliable.

An interesting feature: you cannot break the freeze by use of the type cover's keyboard or touch pad but can by an eternal mouse or keyboard.

I've attached DMESG.

tags: added: kernel-bug-exists-upstream kernel-bug-exists-upstream-4.0.0-rc6
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
penalvch (penalvch)
tags: added: bios-outdated-3.11.0760
removed: latest-bios-3.11.0450
Revision history for this message
Keith McClelland (zismylaptop) wrote :

I should really say that suspend-to-idle never holds forever. With the SP3 disconnected from every plug including docking station, power, type cover, and micro-SD and with both BT and WIFI turned off, it lasts for random periods and then comes back alive.

I'm using 4.0-RC6 with the set of patches listed in kernel bug 84651 comment 87.

penalvch (penalvch)
tags: added: kernel-bug-exists-upstream-4.0-rc6
removed: kernel-bug-exists-upstream-4.0.0-rc6
Revision history for this message
Keith McClelland (zismylaptop) wrote :

I am using that update; it came March 31 and disconnected me from grub. I figured out how to use boot-repair and got back to Linux.

Revision history for this message
Keith McClelland (zismylaptop) wrote :

Here is my bios information:

3.11.0760
03/16/2015

Revision history for this message
penalvch (penalvch) wrote :

Keith McClelland, could you please provide the missing information following https://wiki.ubuntu.com/DebuggingKernelSuspend ?

tags: added: latest-bios-3.11.0760
removed: bios-outdated-3.11.0760
Changed in linux (Ubuntu):
status: Confirmed → Triaged
status: Triaged → Incomplete
Revision history for this message
Keith McClelland (zismylaptop) wrote :

Christopher, when I downloaded the 4.0-rc6 kernel earlier in the week it didn't really install right but ran (somehow broken with respect to the headers) so I deleted it after making the report. Tonight I can't repeat the installation, good or bad, so I'll wait until the next one is made, probably until sometime Monday.

When doing this should I install just the image and headers for ".amd64" or also the headers for ".all"?

I presume from your comment that you want me to do the whole "resume-trace" procedure even though the problem isn't that it resumes badly but that it resumes too easily.

Thanks

Revision history for this message
Keith McClelland (zismylaptop) wrote :

Christopher, this assignment doesn't seem possible. When I use Linux 4.0.0-040000rc7-genericx86_64, it suspends well and seems to stay suspended indefinitely. But I can't get it to resume at all and have to kill it by holding the power switch for a long time.

When it comes back it reports two or three errors, though I'm not sure they are different. It's a proglem type KernelOops, suspend/resume failure with apport version 2.14.7-0ubuntu8.2.

The hole suspend thing is highly erratic. Sometimes, using my modified 4.0-rc7 kernel, I actually get both lid open and lid close events. When that happens, I can set it to suspend on lid closed and it actually works pretty well except for not going through a logon on the way back. Maybe suspending by another means wrecks its ability to recognize lid opening but this is getting into speculation.

I and some other people are trying to keep a coherent discussion of all surface problems going on https://groups.google.com/forum/#!forum/linux-surface . I will keep trying to understand things there.]

Maybe this bug should be closed for being irreproducible.

Keith

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
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.