8086:0166 [Lenovo IdeaPad Z580] 12.04-13.10 10-20min boot delay (From 3.2.0.29->3.12-rc2)

Bug #1093217 reported by Abhishek Ellore Sreenath on 2012-12-23
154
This bug affects 29 people
Affects Status Importance Assigned to Milestone
Linux
Unknown
Unknown
linux (Ubuntu)
High
Unassigned

Bug Description

On updating the kernel from 3.2.0.29 to any later version (3.2.0.30) and above, Ubuntu will not boot. I see a blank screen with a cursor but nothing happens after that.

Trying to boot into recovery mode is not useful either.

Booting into an older version of the kernel (3.2.0.29) is successful.

I have seen this issue with all kernels after 3.2.0.29 till date : 3.2.0.31, 3.2.0.32, 3.2.0.33, 3.2.0.34, 3.2.0.35

---
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 2.0.1-0ubuntu15.1
Architecture: i386, AMD64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: PCH [HDA Intel PCH], device 0: ALC269VC Analog [ALC269VC Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: abhishek 2104 F.... pulseaudio
 /dev/snd/pcmC0D0p: abhishek 2104 F...m pulseaudio
Card0.Amixer.info:
 Card hw:0 'PCH'/'HDA Intel PCH at 0xf0610000 irq 46'
   Mixer name : 'Intel PantherPoint HDMI'
   Components : 'HDA:10ec0269,17aa4022,00100202 HDA:80862806,80860101,00100000'
   Controls : 26
   Simple ctrls : 12
DistroRelease: Ubuntu 12.04
HibernationDevice: RESUME=UUID=4b3dd96d-8b88-4dbf-97d4-e2d78e5ad0fc
InstallationMedia: Ubuntu 12.04.1 LTS "Precise Pangolin" - Release i386 (20120817.3)
MachineType: LENOVO IdeaPad Z580
MarkForUpload: True
Package: linux (not installed)
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-29-generic-pae root=UUID=a24e74a5-a245-4b37-b63c-96869939bf5c ro quiet splash
ProcVersionSignature: Ubuntu 3.2.0-29.46-generic-pae 3.2.24
RelatedPackageVersions:
 linux-restricted-modules-3.2.0-29-generic-pae N/A
 linux-backports-modules-3.2.0-29-generic-pae N/A
 linux-firmware 1.79.1
StagingDrivers: rts5139 mei
Tags: precise running-unity staging
Uname: Linux 3.2.0-29-generic-pae i686
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin netdev plugdev sambashare sudo
dmi.bios.date: 06/11/2012
dmi.bios.vendor: LENOVO
dmi.bios.version: 5FCN34WW
dmi.board.asset.tag: Base Board Asset Tag
dmi.board.name: Lenovo
dmi.board.vendor: LENOVO
dmi.board.version: Lenovo Z580
dmi.chassis.asset.tag: Asset Tag
dmi.chassis.type: 9
dmi.chassis.vendor: Intel Corporation
dmi.chassis.version: 0.1
dmi.modalias: dmi:bvnLENOVO:bvr5FCN34WW:bd06/11/2012:svnLENOVO:pnIdeaPadZ580:pvrLenovoZ580:rvnLENOVO:rnLenovo:rvrLenovoZ580:cvnIntelCorporation:ct9:cvr0.1:
dmi.product.name: IdeaPad Z580
dmi.product.version: Lenovo Z580
dmi.sys.vendor: LENOVO

These logs were collected from 3.2.0.29 version which boots successfully

Thank you for taking the time to report this bug and helping to make Ubuntu better. It seems that your bug report is not filed about a specific source package though, rather it is just filed against Ubuntu in general. It is important that bug reports be filed about source packages so that people interested in the package can find the bugs about it. You can find some hints about determining what package your bug might be about at https://wiki.ubuntu.com/Bugs/FindRightPackage. You might also ask for help in the #ubuntu-bugs irc channel on Freenode.

To change the source package that this bug is filed about visit https://bugs.launchpad.net/ubuntu/+bug/1093217/+editstatus and add the package name in the text box next to the word Package.

[This is an automated message. I apologize if it reached you inappropriately; please just reply to this message indicating so.]

tags: added: bot-comment

Additional Info : I have a Lenovo Thinkpad with an Intel Core i7 and on board graphcs

affects: ubuntu → ubuntu-release-upgrader (Ubuntu)
Dave Gilbert (ubuntu-treblig) wrote :

Flipping to linux package since it's a kernel bug.

You'll be asked to record some logs; please do this on the kernel that does boot ok, and put a note on the end reminding people that it's the different version that fails

affects: ubuntu-release-upgrader (Ubuntu) → linux (Ubuntu)
Changed in linux (Ubuntu):
importance: Undecided → High
summary: - Ubuntu 12.04 will not boot after kernel update
+ Ubuntu 12.04 will not boot after kernel update (From 3.2.0.29->3.2.0.31)
tags: added: regression-update

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1093217

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: precise

apport information

tags: added: apport-collected running-unity staging
description: updated

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

description: updated
Changed in linux (Ubuntu):
status: Incomplete → Confirmed

Abhishek Ellore Sreenath, could you please test the latest upstream kernel available 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:
kernel-fixed-upstream
kernel-fixed-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested. For example:
kernel-fixed-upstream-v3.8-rc1

This can be done by clicking on the yellow circle with a black pencil icon next to the word Tags located at the bottom of the bug description. As well, please remove the tag:
needs-upstream-testing

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-VERSION-NUMBER

As well, please remove the tag:
needs-upstream-testing

If you are unable to test the mainline kernel, please comment as to why specifically you were unable to test it and add the following tags:
kernel-unable-to-test-upstream
kernel-unable-to-test-upstream-VERSION-NUMBER

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.

Helpful bug reporting tips:
https://help.ubuntu.com/community/ReportingBugs

tags: added: needs-upstream-testing
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
tags: added: kernel-bug-exists-upstream kernel-bug-exists-upstream-3.8.0.999
removed: needs-upstream-testing
Changed in linux (Ubuntu):
status: Incomplete → Confirmed

Abhishek Ellore Sreenath, thank you for testing the mainline kernel. The next step is to perform a Ubuntu kernel commit bisect from 3.2.0.29 to 3.2.0.30, in order to identify the last good Ubuntu kernel commit, followed immediately by the first bad one.

Could you please do this following https://wiki.ubuntu.com/Kernel/KernelBisection ?

Thank you for your understanding.

Helpful bug reporting tips:
https://help.ubuntu.com/community/ReportingBugs

summary: - Ubuntu 12.04 will not boot after kernel update (From 3.2.0.29->3.2.0.31)
+ Ubuntu 12.04 will not boot after kernel update (From 3.2.0.29->3.2.0.30)
tags: added: needs-bisect
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
description: updated
Stanie (stanson1) wrote :

I have no time to do kernel bisection - just adding a small info.

I also have Lenovo Z580 (Intel Core i5 with Ivybridge & NVIDIA GeForce GT 635M with CUDA)
But there seems to be a slight difference. I use Ubuntu 12.04 64b (not i386).
I have tried ubuntu 12.10 and 13.04 (both 64b), but no change. Quantal runs well only in live mode and Raring is a no go - won't even start live mode.

When I choose i386 version instead of amd64, there is no problem with blank screen or not booting into either of them at all. But that is not my preference.

BTW this bug is only present in *buntu based distributions. No such troubles with a few distro based on Arch or Debian I have tried so far...

I have faced this issue as well. 64 bit variant of Ubuntu does not boot for me either.

Stanie, if you have a bug in Ubuntu, could you please file a new report by executing the following in a terminal:
ubuntu-bug linux

For more on this, please see the Ubuntu Kernel team article:
https://wiki.ubuntu.com/KernelTeam/KernelTeamBugPolicies#Filing_Kernel_Bug_reports

the Ubuntu Bug Control team and Ubuntu Bug Squad team article:
https://wiki.ubuntu.com/Bugs/BestPractices#X.2BAC8-Reporting.Focus_on_One_Issue

and Ubuntu Community article:
https://help.ubuntu.com/community/ReportingBugs#Bug_reporting_etiquette

When opening up the new report, please feel free to subscribe me to it.

Please note, not filing a new report may delay your problem being addressed as quickly as possible.

Thank you for your understanding.

Abhishek Ellore Sreenath, have you had a chance to see https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1093217/comments/28 ?

Stanie (stanson1) wrote :

Sorry for not being more "precise".
I have the same bug in ubuntu kernel as Abhishek Ellore Sreenath. That is why I added a little additional info instead of only clicking "This bug affects me as well". No need to file a new report...

Tom Thompson (tom2460) wrote :

I believe the problematic kernels do actually boot. It just takes 12 to 13 minutes. dmesg shows several 120 second timeouts. Here is an excerpt that shows the final timeout and then (presumably) the error that is related to the hang.

<pre>
[ 840.304049] INFO: task swapper/0:1 blocked for more than 120 seconds.
[ 840.304052] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 840.304054] swapper/0 D ffffffff81806240 0 1 0 0x00000000
[ 840.304058] ffff880118301e80 0000000000000046 0000000000000000 ffff880114537040
[ 840.304061] ffff880118301fd8 ffff880118301fd8 ffff880118301fd8 00000000000137c0
[ 840.304065] ffff880117c19700 ffff8801182f8000 ffff880118301e70 0000000000000009
[ 840.304068] Call Trace:
[ 840.304074] [<ffffffff8165b50f>] schedule+0x3f/0x60
[ 840.304078] [<ffffffff81092df5>] async_synchronize_cookie_domain+0x75/0x120
[ 840.304082] [<ffffffff8108bd20>] ? add_wait_queue+0x60/0x60
[ 840.304085] [<ffffffff81092ef7>] async_synchronize_full+0x17/0x20
[ 840.304090] [<ffffffff81641107>] init_post+0xe/0xc5
[ 840.304094] [<ffffffff81cfcd74>] kernel_init+0x164/0x164
[ 840.304098] [<ffffffff81667b74>] kernel_thread_helper+0x4/0x10
[ 840.304101] [<ffffffff81cfcc10>] ? start_kernel+0x3bd/0x3bd
[ 840.304104] [<ffffffff81667b70>] ? gs_change+0x13/0x13
[ 947.952877] ACPI Error: Method parse/execution failed [\_SB_.WADR] (Node ffff880118260028), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 947.952891] ACPI Error: Method parse/execution failed [\_SB_.BAT1.UPBI] (Node ffff880118260258), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 947.952898] ACPI Error: Method parse/execution failed [\_SB_.BAT1._BIF] (Node ffff880118260208), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 947.952906] ACPI Exception: AE_AML_INFINITE_LOOP, Evaluating _BIF (20110623/battery-419)
[ 947.952909] ACPI: Battery Slot [BAT1] (battery present)
[ 947.954127] Freeing unused kernel memory: 924k freed
[ 947.954237] Write protecting the kernel read-only data: 12288k
</pre>

This is with 3.2.0-36-generic #57-Ubuntu SMP Tue Jan 8 21:44:52 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Dave Gilbert (ubuntu-treblig) wrote :

Abhishek and anyone else, given Tom's post, can you all try and leave it for 15mins or so and see if it eventually boots,
if so please include a dmesg from the successful boot.

Tom: What hardware exactly are you running on and bios version ( dmesg|grep -i DMI should give us that info).

Tom Thompson (tom2460) wrote :

DMI info from dmesg:

[ 0.000000] DMI 2.7 present.
[ 0.000000] DMI: LENOVO IdeaPad Z580 /Lenovo , BIOS 5FCN89WW 08/27/2012

It has i3-3110M CPU @ 2.40GHz and Intel Integrated Graphics.

Some numbers associated with the model are 59345252 and 20135.

Tom Thompson, if you have a bug in Ubuntu, could you please file a new report by executing the following in a terminal:
ubuntu-bug linux

For more on this, please see the Ubuntu Kernel team article:
https://wiki.ubuntu.com/KernelTeam/KernelTeamBugPolicies#Filing_Kernel_Bug_reports

the Ubuntu Bug Control team and Ubuntu Bug Squad team article:
https://wiki.ubuntu.com/Bugs/BestPractices#X.2BAC8-Reporting.Focus_on_One_Issue

and Ubuntu Community article:
https://help.ubuntu.com/community/ReportingBugs#Bug_reporting_etiquette

As is already discussed in the links above, this will help by allowing us to analyze your hardware.

When opening up the new report, please feel free to subscribe me to it.

Please note, not filing a new report may delay your problem being addressed as quickly as possible.

Thank you for your understanding.

Hi,

I did try this out and saw that it does boot, albeit after a long time.

Here is the repeated stack trace I saw:

241.600106] Call Trace:
[ 241.600112] [<c1036a98>] ? default_spin_lock_flags+0x8/0x10
[ 241.600115] [<c1036a98>] ? default_spin_lock_flags+0x8/0x10
[ 241.600119] [<c15a84bd>] ? _raw_spin_lock_irqsave+0x2d/0x40
[ 241.600121] [<c15a68b5>] schedule+0x35/0x50
[ 241.600124] [<c1081015>] async_synchronize_cookie_domain+0xb5/0x130
[ 241.600128] [<c10c5572>] ? call_rcu_sched+0x12/0x20
[ 241.600131] [<c107a0e0>] ? add_wait_queue+0x50/0x50
[ 241.600133] [<c10810ea>] async_synchronize_full+0x1a/0x20
[ 241.600136] [<c158f594>] init_post+0x10/0xae
[ 241.600139] [<c18798e3>] kernel_init+0x15b/0x15b
[ 241.600141] [<c1879788>] ? start_kernel+0x353/0x353
[ 241.600144] [<c15afcfe>] kernel_thread_helper+0x6/0x10

My BIOS version :
[ 0.000000] DMI 2.7 present.
[ 0.000000] DMI: LENOVO IdeaPad Z580 /Lenovo , BIOS 5FCN34WW 06/11/2012
[ 1698.204135] HDMI status: Codec=3 Pin=5 Presence_Detect=0 ELD_Valid=0

Dave Gilbert (ubuntu-treblig) wrote :

Hi Abhishek,
  OK - that's good; and for added fun you have the same hardware as Tom (Ideapad Z580); can you include the full output of dmesg after that slow boot please.

Dave

summary: Ubuntu 12.04 will not boot after kernel update (From 3.2.0.29->3.2.0.30)
+ [Lenovo IdeaPad Z580]
Dave Gilbert (ubuntu-treblig) wrote :

OK, so in the dmesg we see the following;

[ 4.153751] usb 3-3: new high-speed USB device number 2 using xhci_hcd
[ 4.521320] usb 1-1.3: new high-speed USB device number 3 using ehci_hcd
[ 241.600057] INFO: task swapper/0:1 blocked for more than 120 seconds.
[ 241.600063] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 241.600067] swapper/0 D f690e000 0 1 0 0x00000000
[ 241.600074] f749df64 00000046 f690e000 f690e000 00000000 f759cc20 c1931e00 c1931e00
[ 241.600085] db45b94e 00000000 f7bb9e00 f74a0000 f759cc20 019ff37b 00000004 f690e001
[ 241.600102] 00000000 ef804080 ef8e22a0 00000001 00000004 00000000 f749df40 c1036a98
[ 241.600106] Call Trace:
[ 241.600112] [<c1036a98>] ? default_spin_lock_flags+0x8/0x10
[ 241.600115] [<c1036a98>] ? default_spin_lock_flags+0x8/0x10
[ 241.600119] [<c15a84bd>] ? _raw_spin_lock_irqsave+0x2d/0x40
[ 241.600121] [<c15a68b5>] schedule+0x35/0x50
[ 241.600124] [<c1081015>] async_synchronize_cookie_domain+0xb5/0x130
[ 241.600128] [<c10c5572>] ? call_rcu_sched+0x12/0x20
[ 241.600131] [<c107a0e0>] ? add_wait_queue+0x50/0x50
[ 241.600133] [<c10810ea>] async_synchronize_full+0x1a/0x20
[ 241.600136] [<c158f594>] init_post+0x10/0xae
[ 241.600139] [<c18798e3>] kernel_init+0x15b/0x15b
[ 241.600141] [<c1879788>] ? start_kernel+0x353/0x353
[ 241.600144] [<c15afcfe>] kernel_thread_helper+0x6/0x10

and then we get the repeating hang messages every 120 seconds or so until:
[ 1319.994057] [<c1879788>] ? start_kernel+0x353/0x353
[ 1319.994059] [<c15afcfe>] kernel_thread_helper+0x6/0x10
[ 1672.348773] ACPI Error: Method parse/execution failed [\_SB_.WADR] (Node f74348a0), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 1672.348785] ACPI Error: Method parse/execution failed [\_SB_.BAT1.UPBI] (Node f74349f0), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 1672.348812] ACPI Error: Method parse/execution failed [\_SB_.BAT1._BIF] (Node f74349c0), AE_AML_INFINITE_LOOP (20110623/psparse-536)
[ 1672.348820] ACPI Exception: AE_AML_INFINITE_LOOP, Evaluating _BIF (20110623/battery-419)

which matches what Tom saw (although yours took a bit longer).

summary: - Ubuntu 12.04 will not boot after kernel update (From 3.2.0.29->3.2.0.30)
- [Lenovo IdeaPad Z580]
+ Ubuntu 12.04 10-20min boot delay (From 3.2.0.29->3.2.0.30) [Lenovo
+ IdeaPad Z580]
Changed in linux (Ubuntu):
status: Incomplete → Triaged
Denis Smirnov (dennwc) on 2013-02-19
tags: added: quantal
vince (vincent-typerrr) on 2013-03-28
description: updated
vince (vincent-typerrr) on 2013-03-28
Changed in linux (Ubuntu):
status: Triaged → In Progress
Jacob Cram (cramjaco) on 2013-03-29
Changed in linux (Ubuntu):
status: In Progress → Fix Released
Changed in linux (Ubuntu):
status: Fix Released → In Progress
status: In Progress → Triaged
tags: added: needs-upstream-testing
removed: kernel-bug-exists-upstream
summary: - Ubuntu 12.04 10-20min boot delay (From 3.2.0.29->3.2.0.30) [Lenovo
- IdeaPad Z580]
+ Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.2.0.30)
+ [Lenovo IdeaPad Z580]
summary: - Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.2.0.30)
+ Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.8.0.19)
[Lenovo IdeaPad Z580]
Changed in linux (Ubuntu):
status: Triaged → Confirmed
Changed in linux (Ubuntu):
status: Confirmed → Triaged
tags: added: latest-bios-5fcn34ww
Siddu (sduddikunta) on 2013-06-07
Changed in linux (Ubuntu):
status: Triaged → In Progress
vince (vincent-typerrr) on 2013-06-09
Changed in linux (Ubuntu):
status: In Progress → Fix Released
Changed in linux (Ubuntu):
status: Fix Released → Triaged
101 comments hidden view all 181 comments
Dave Gilbert (ubuntu-treblig) wrote :

13.10 still uses kernel 3.11
The upstream comment says they believe it's fixed in kernel 3.12-rc2, so can some of you try the latest kernel by using the
instructions in comment #27 from Christopher.

The issue has been confirmed as not fixed, even in 3.12-rc2. See the linked
entry on the kernel bug tracker.

Siddu: Hmm your description on there seems to be different; my understanding of the bug reported here was that it happened every/most times during boot, your comment on the upstream bug talks about occasional infinite loops - are we talking about the same bug here?

We are. The infinite loop only happens occassionally with the new 3.12-rc2
kernel, as opposed to almost every time with the previous kernels.

summary: - Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.8.0.19)
+ Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.12-rc2)
[Lenovo IdeaPad Z580]
neon1ks (neon1ks) on 2013-11-05
summary: - Ubuntu 12.04/12.10/13.04 10-20min boot delay (From 3.2.0.29->3.12-rc2)
- [Lenovo IdeaPad Z580]
+ Ubuntu 12.04/12.10/13.04/13.10 10-20min boot delay (From
+ 3.2.0.29->3.12-rc2) [Lenovo IdeaPad Z580]
summary: - Ubuntu 12.04/12.10/13.04/13.10 10-20min boot delay (From
- 3.2.0.29->3.12-rc2) [Lenovo IdeaPad Z580]
+ 8086:0166 [Lenovo IdeaPad Z580] 12.04-13.10 10-20min boot delay (From
+ 3.2.0.29->3.12-rc2)
Matthew Pray (matthewpray1) wrote :

Can this be confirmed that it only effects debian based distros? Has anyone tried Arch/Manjaro/Cent OS?

It affects all Linux-based OSes. It is a bug in the upstream kernel itself.
I've tried Fedora, Arch, and even an LFS.

nozyczek (nozyczek) wrote :

I have not seen this problem on Arch yet. It has been only few weeks since I installed it on my z580 so I will wait few more weeks and I will report back. Kernel I'm using is stock vanilla Arch with no customization on my end.

-->uname -a
Linux z580 3.11.6-1-ARCH #1 SMP PREEMPT Fri Oct 18 23:22:36 CEST 2013 x86_64 GNU/Linux

-->dmesg | grep Z580
[ 0.000000] DMI: LENOVO IdeaPad Z580 /Lenovo , BIOS 5FCN89WW 08/27/2012

-->dmesg | grep DSDT
[ 0.000000] ACPI: DSDT 00000000daff1000 0AD57 (v02 LENOVO IVB-CPT 00000000 INTL 20061109)
[ 0.144683] ACPI: EC: Look up EC in DSDT

nozyczek (nozyczek) wrote :

Few more days on arch and i still have not seen this bug. I was on 3.12.0-1-ARCH for a bit and now I'm on 3.12.1-1-ARCH.

provost (robert-lagndon) wrote :

This is what worked for me.
1) Shut down laptop
2) Remove battery and unplug the power supply.
3) Press and hold power button for more than 40 seconds.
4) replace back battery and plug in power.
5) Boot into Ubuntu.Ubuntu boots normally without any delay.

Apparantly there is a bios level optimization put in by lenevo that prevents battery charging until it reches below a certain percentage. They claim this is to improve battery life. It seems that this bios level optimization messes with Ubuntu start up and hangs it.

Steps mentioned above will disable this setting and apparantly fixes ubuntu boot delay.
I have not seen boot delay after this fix for more than 3 weeks now.
I am on
~$ uname -a
Lenovo-Z580 3.8.0-33-generic #48-Ubuntu SMP Wed Oct 23 09:16:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

P.S. the steps mentioned above also fixes Windows 8/8.1 glitch of battery not charging even when power adapter is connected

bluenova (bluenova) wrote :

@provost, Sounds a little like witchcraft but I'll give anything a try. Unfortunately first boot was stuck on a delay using 3.11.0-13-generic.

Abhishek Ellore Sreenath, this bug was reported a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue? If so, could you please test for this with the latest development release of Ubuntu? ISO images are available from http://cdimage.ubuntu.com/daily-live/current/ .

If it remains an issue, could you please just make a comment to this.

Also, could you please test the latest upstream kernel available (v3.13-rc3, not rc4 as it doesn't have the necessary files) 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:
kernel-fixed-upstream
kernel-fixed-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested. For example:
kernel-fixed-upstream-v3.13-rc3

This can be done by clicking on the yellow circle with a black pencil icon next to the word Tags located at the bottom of the bug description. As well, please remove the tag:
needs-upstream-testing

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-VERSION-NUMBER

As well, please remove the tag:
needs-upstream-testing

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.

Changed in linux (Ubuntu):
status: Triaged → Incomplete
Paul Abrahams (abrahams) wrote :

I also have a Lenovo Z580 running (Kubuntu) 13.10. I have a slightly different problem (also reported elsewhere) that I assume has the same cause and probably the same fix. My system often freezes for anywhere from 10 seconds to a minute or two. Switching to a virtual console and back seems to help speed up the recovery but I'm not sure of that. It's particularly noticeable when running Firefox, but I've seen it in other contexts. The mouse continues to work during the freeze.

nozyczek (nozyczek) wrote :

@Paul
I don't think this is related to this bug.

Matthew Pray (matthewpray1) wrote :

I have read that this is an issue with software in the battery. Would buying a new battery help at all with this issue...such as a non-lenovo battery?

Siddu (sduddikunta) wrote :

I may have come across a workaround. After diff-ing the Arch and Ubuntu kernel configs (the only true difference as the Ubuntu mainline series is impacted as well), I found that Arch compiles ACPI battery support as a module, while Ubuntu has it built-in. The difference seems to manifest in the time at which ACPI battery support is loaded. Since Arch has it as a module and not in the initramfs, it loads the battery module after the root filesystem comes up, long after the danger of a hang. Recompiling the Ubuntu kernel using the kernel source package with battery support as a module, adding a blacklist entry in /etc/modprobe.d to prevent battery support from coming up too early, and adding a system service in /etc/init to bring up the battery after filesystems are mounted has worked so far for me and a friend with the same machine. The only downside is that the kernel must be recompiled each time it is released, unless Ubuntu adopts a change to their configs.

I made a PPA with current kernel packages (13.10 Saucy only) and a "linux-z580" package with the two config/script files. It is offered here, of course, without any warranty of any kind. Find it here: https://launchpad.net/~sduddikunta/+archive/z580.

Varenya (varen90) wrote :

I am still facing the problem I am using 12.04 LTS version kernel:
3.8.0-35-generic #50~precise1-Ubuntu SMP Wed Dec 4 17:25:51 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

The issue is intermittent, i have to switch it off forcefully twice or thrice to make it work.

Please provide an permanent fix for this.

neon1ks (neon1ks) wrote :

Siddu,
Thank you very much!

Alagos (alagoszim) wrote :

Found temporary solution which works for me on my ubuntu 12.04 x64 and lenovo z580:
http://askubuntu.com/a/353999
Maybe it could be useful for someone else.

Jochen Fahrner (jofa) wrote :

Thank you Alagos for that link. That also did the trick for me.

Jacob Cram (cramjaco) wrote :

Siddhu, I'd like to try tour workaround. Can I use that that kernal with ubuntu 12.04 instead of 13.04 or is that likely to cause problems?

Siddu (sduddikunta) wrote :

I've meaning to support LTS for a while, so here it is. I just uploaded a build of 3.2.0-58.88 for Precise 12.04 LTS to the PPA. Give it a few hours to build before you attempt to install it. Install both the linux-z580 package (contains boot scripts) and upgrade your linux-image-3.2.0-58-generic package to version 3.2.0-58.88ppa1. Note that there's currently a slightly newer kernel in precise-proposed, so make sure you don't upgrade to that one just yet. https://launchpad.net/~sduddikunta/+archive/z580.

Jacob Cram (cramjaco) wrote :

Thanks Siddu,
     Forgive my ignorance, but may I ask what commands I need to run to make this happen. I am currently running 3.13.0-031300rc3-generic kernal.

I installed the ppa no problem
sudo add-apt-repository ppa:sduddikunta/z580
sudo apt-get update

but then how do I correctly install the packages from the repository?
 sudo apt-get install linux-z580

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  linux-z580
0 upgraded, 1 newly installed, 0 to remove and 6 not upgraded.
Need to get 2,300 B of archives.
After this operation, 38.9 kB of additional disk space will be used.
Get:1 http://ppa.launchpad.net/sduddikunta/z580/ubuntu/ precise/main linux-z580 all 0.1-3 [2,300 B]
Fetched 2,300 B in 0s (4,008 B/s)
Selecting previously unselected package linux-z580.
(Reading database ... 1017776 files and directories currently installed.)
Unpacking linux-z580 (from .../linux-z580_0.1-3_all.deb) ...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.13.0-031300rc3-generic
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-3.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8411-2.fw for module r8169
Processing triggers for ureadahead ...
Setting up linux-z580 (0.1-3) ...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.13.0-031300rc3-generic
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-3.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8411-2.fw for module r8169

and then sudo apt-get install linux

Reading package lists... Done
Building dependency tree
Reading state information... Done
linux is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.

I presume I should perhaps delete the old linux image if I want this to work?
I'd love specific instructions if anybody could help me out.
Thanks in advance.

Siddu (sduddikunta) wrote :

You want to upgrade your linux packages. Run "sudo apt-get dist-upgrade"
for the upgrades to run. You should see a version with a "ppa1" suffix in
the output.

Jacob Cram (cramjaco) wrote :

Thanks Siddhu. I do see the version with ppa1 suffix in the output. The dist-upgrade command ends with the following two lines though
Error! Could not locate dkms.conf file.
File: does not exist.

Is this a problem or can I ignore it?

Jacob Cram (cramjaco) wrote :

Also, should I expect something new to show up in grub, or should I just boot from 3.2.0-58?

Siddu (sduddikunta) wrote :

I'm not sure about DKMS, but if you don't have any special kernel modules
like Virtualbox or proprietary NVIDIA drivers, you should be okay. No new
entry should appear in grub.

Jacob Cram (cramjaco) wrote :

Excellent. So far no problems then. I do run virtualbox but "sudo /etc/init.d/vboxdrv setup" seemed sufficient to get that working again.

Jochen Fahrner (jofa) wrote :

What is the advantage of a patched kernel over a patched DSDT (as described in comment #160), which works with ANY kernel?

Siddu (sduddikunta) wrote :

The patched dsdt is actually not guaranteed to work. I've had instances
where it didn't. That patch attempts to fix what's seems to be a race
condition by adding a delay to the relevant function. But with all timing
workarounds, it won't always work. The kernel patch will always work,
because battery support simply isn't available until late in the boot
process, where it can't do any harm.

Jochen Fahrner (jofa) wrote :

Maybe this race condition is also an issue on other platforms. I'm wondering why my Acer Aspire One 521 netbook often hangs on reboot. Powerup is fine, but reboot often does not boot. Could be the same problem.

Dave Gilbert (ubuntu-treblig) wrote :

Jochen: Please open a separate bug for your Acer; this one mostly seems to be pretty specific to this hardware.

Matthew Pray (matthewpray1) wrote :

Does using something like coreboot to replace the BIOS fix this problem? How about supergrubdisc?

Jacob Cram (cramjaco) wrote :

I have been running Siddhu's patched kernal for the last few months and I have occasionally (maybe 2x/week) been experiencing whole system freezes. Everything on the screen stops moving or responding. I don't know if this is a problem with that particular kernal or something else (I haven't controlled for all the system changes I have made), but it wasn't a problem with other kernals. Has anyone else experienced this pattern?

Siddu (sduddikunta) wrote :

I haven't experienced it. Are you running any graphics kernel modules, such
as the NVIDIA or AMD proprietary drivers? What version of Ubuntu are you
on? I recall that such a bug used to exist in the Intel Graphics Stack for
Ivy Bridge GPUs, but it has since been fixed. I'm not quite sure which
kernel version the fix was released with, but I think that Precise is still
affected.

Matthew Pray (matthewpray1) wrote :

Has anyone tried out Ubuntu 14.04?

I have recently tried Manjaro, and then a full Arch Install on my Lenovo z580. Both successfully boot without any modifications. I'll keep an eye out here in the mean time, in hopes that this gets resolved.

Siddu (sduddikunta) wrote :

14.04 has the same issue. I've since installed arch on a separate LV, and
I'm intending on switching to it as soon as it get it with all the software
and whatnot installed.

Jon Baca (jtbaca001) wrote :

The only way I have been able to get the patched DSDT to work is to build it into the kernel. This is less than ideal but will allow you to use your computer. If you have been unable to get a patched DSDT to work, this should work for you. I am currently running 14.04 with a custom kernel build. The following should work with other kernel versions as well. I am only posting the steps exactly as I performed them, so if version number etc don't match for you, you are on your own.

1) Install Ubuntu 14.04. If you have to, just pull out your battery and complete the installation. Just leave it out until we are finished.

2) Compile your custom DSDT - this should produce a DSDT.hex file that you will need for incorporation into the kernel.
sudo iasl -tc DSDT.dsl

3) Get the source:
sudo apt-get source linux-image-3.13.0-24-generic

4) Untar the source:
gzip -cd linux_3.13.0.orig.tar.gz | tar xvf -

5) Move into the directory that contains the kernel source code and apply the patch:
cd linux-3.13/
gzip -cd ~/linux_3.13.0-24.47.diff.gz | patch -p1

6) Get the required tools to build the kernel
sudo apt-get install git-core libncurses5 libncurses5-dev libelf-dev asciidoc binutils-dev linux-source qt3-dev-tools libqt3-mt-dev libncurses5 libncurses5-dev fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge kernel-package gcc

7) Configure the kernel for compilation:
make menuconfig

When the menu comes up navigate to Power Management and ACPI options -> ACPI
In the field "Custom DSDT Table file to include" enter the path to your DSDT.hex file which for me was /home/DSDT.hex

Now navigate to General Setup (you will have to go back to the main menu)
In the field "Local Version" enter "-custom-dsdt"

Now navigate to Device Drivers -> Generic Driver Options
Deselect the field "Prevent Firmware from being built"

Select save at the bottom, accept the default file name and exit

8) Build the kernel:
sudo make -j3 deb-pkg

At this point, just walk away from you computer. Come back every so often to check on the progress but the build will probably take a couple of hours(depending on your system). Try to resolve it and retry building the kernel

9) Install the kernel:
sudo dpkg -i linux-image-3.13.9-custom-dsdt_3.13.9-custom-dsdt-4_amd64.deb

This will install the new kernel. If it completes successfully, reboot your system. The default grub option should now be your new kernel. You can verify the custom DSDT is loaded in dmesg and you should see your custom version number with the "uname -r" command. If all goes well power off your computer, reinstall your battery, and boot your computer up.

Let me know if I missed anything and good luck.

Jon Baca (jtbaca001) wrote :

Sorry, end of 8 was supposed to say if you encounter any errors, try to resolve them and retry building the kernel.

Tommy_CZ (t-kijas) wrote :

It seems to be resolved, right?

Displaying first 40 and last 40 comments. View all 181 comments or add a comment.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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