x86 ACPI: Fix breakage of resume on 64-bit UP systems with SMP kernel

Bug #292515 reported by Mike Homer
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: linux-source

my laptop with with and amd64 chip is now not resuming from suspend with Intrepid. It use to work fine in Hardy. I did some looking around and it looks like it's this bug. I also downloaded the latest 8.10 source for (2.6.27-7-generic #1 SMP ) and the patch has not been applied.

Kernel bug report
http://bugzilla.kernel.org/show_bug.cgi?id=11568

Link to patch
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3038edabf48f01421c621cb77a712b446d3a5d67;hp=73bdf0a60e607f4b8ecc5aec597105976565a84f

Revision history for this message
diverbelow (groovygravy10-gmail) wrote :

I am also seeing this type of behavior on my IA32e machine using the 2.6.27-7-generic #1 SMP kernel.

Revision history for this message
Mike Homer (homerhomer) wrote :

Here is some more info from 2.6.27.4 change log
http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.27.4
-----------------------------------------------------------------

commit bc79810633524ea09b77e3de3ba3f4a97f2152b7
Author: Rafael J. Wysocki <email address hidden>
Date: Mon Oct 20 21:30:19 2008 +0000

    x86 ACPI: Fix breakage of resume on 64-bit UP systems with SMP kernel

    We are now using per CPU GDT tables in head_64.S and the original
    early_gdt_descr.address is invalidated after boot by
    setup_per_cpu_areas(). This breaks resume from suspend to RAM on
    x86_64 UP systems using SMP kernels, because this part of head_64.S
    is also executed during the resume and the invalid GDT address
    causes the system to crash. It doesn't break on 'true' SMP systems,
    because early_gdt_descr.address is modified every time
    native_cpu_up() runs. However, during resume it should point to the
    GDT of the boot CPU rather than to another CPU's GDT.

    For this reason, during suspend to RAM always make
    early_gdt_descr.address point to the boot CPU's GDT.

Revision history for this message
Mike Homer (homerhomer) wrote :

The latest Intrepid-proposed kernel correctly suspends

Thanks :)

Revision history for this message
Mike Homer (homerhomer) wrote :

Umm, the latest kernel breaks it again.

 2.6.27-9-generic #1 SMP Thu Nov 20 22:15:32 UTC 2008 x86_64 GNU/Linux

:(

Revision history for this message
Andy Whitcroft (apw) wrote :

This is not a bug in the linux-meta package, moving to the linux package.

affects: linux-meta (Ubuntu) → linux (Ubuntu)
Revision history for this message
kernel-janitor (kernel-janitor) wrote :

Hi Mike,

Please be sure to confirm this issue exists with the latest development release of Ubuntu. ISO CD images are available from http://cdimage.ubuntu.com/releases/karmic . If the issue remains, please run the following command from a Terminal (Applications->Accessories->Terminal). It will automatically gather and attach updated debug information to this report.

apport-collect -p linux 292515

Also, if you could test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

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

tags: added: needs-kernel-logs
tags: added: needs-upstream-testing
tags: added: kj-triage
Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Jeremy Foshee (jeremyfoshee) wrote :

This bug report was marked as Incomplete and has not had any updated comments for quite some time. As a result this bug is being closed. Please reopen if this is still an issue in the current Ubuntu release http://www.ubuntu.com/getubuntu/download . Also, please be sure to provide any requested information that may have been missing. To reopen the bug, click on the current status under the Status column and change the status back to "New". Thanks.

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

tags: added: kj-expired
Changed in linux (Ubuntu):
status: Incomplete → Invalid
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.