Re: [Bisected] 3.7-rc1 can't resume

From: Jonas Heinrich
Date: Sat Feb 23 2013 - 08:20:39 EST


Hi,
thank you for your replay and the effort you invest in helping me out
with this problem.
Today, I further debuged the problem and reverted this part of your commit
(without understanding the actual code):

diff --git a/arch/x86/realmode/rm/wakeup_asm.S b/arch/x86/realmode/rm/wakeup_asm.S
index 8905166..e56479e 100644
--- a/arch/x86/realmode/rm/wakeup_asm.S
+++ b/arch/x86/realmode/rm/wakeup_asm.S
@@ -110,15 +119,15 @@ ENTRY(wakeup_start)
movl pmode_cr3, %eax
movl %eax, %cr3

- movl pmode_cr4, %ecx
- jecxz 1f
- movl %ecx, %cr4
+ btl $WAKEUP_BEHAVIOR_RESTORE_CR4, %edi
+ jz 1f
+ movl pmode_cr4, %eax
+ movl %eax, %cr4
1:
+ btl $WAKEUP_BEHAVIOR_RESTORE_EFER, %edi
+ jz 1f
movl pmode_efer, %eax
movl pmode_efer + 4, %edx
- movl %eax, %ecx
- orl %edx, %ecx
- jz 1f
movl $MSR_EFER, %ecx
wrmsr
1:

I applied this change to the current 3.8 kernel and it worked!
If you need more test results, just send me patches and I'll try them :)

Best regards,
Jonas

On 02-18 08:21, H. Peter Anvin wrote:
> I might be able to get my hands on a T43 later this week and see if I can reproduce this. This patch seems more plausible, at least... but still puzzling.
>
> Jonas Heinrich <onny@xxxxxxxxxxxxxxxxxxxx> wrote:
>
> >On 02-17 21:40, Rafael J. Wysocki wrote:
> >> Does the commit immediately preceding this one behave correctly?
> >Strangely the preceding commit works well, so I bisected the kernel
> >again, this time more carefully and I've got a different result!
> >(see bisect_log attachement).
> >It seems to be commit 73201dbec64aebf6b0dca855b523f437972dc7bb
> >(https://patchwork.kernel.org/patch/1511921/).
> >Someone on LKML already reported an issue with this commit
> >(https://lkml.org/lkml/2012/10/18/228) , but Peter
> >Anvins patch got already applied in newer versions.
> >Reverting this patch with the recent git clone seems to be difficult
> >because it already has too much dependencies.
> >
> >Additionally I've included dmesg dumps of the last good and the bad
> >kernel version.
> >
> >On 02-17 12:52, H. Peter Anvin wrote:
> >> T43 is quite old... which might have exposed unique bugs. How
> >reliable is the failure? Even one misidentified commit results in git
> >bisect giving garbage.
> >It affects really all versions after that commit and the failure
> >happens
> >every time I try to resume my notebook.
> >
> >Best regards,
> >Jonas
>
> --
> Sent from my mobile phone. Please excuse brevity and lack of formatting.

Attachment: pgp00000.pgp
Description: PGP signature