Re: Fwd: [Bug 150021] New: kernel panic: "kernel tried to execute NX-protected page" when resuming from hibernate to disk

From: Borislav Petkov
Date: Tue Jul 26 2016 - 10:05:00 EST


On Tue, Jul 26, 2016 at 01:32:28PM +0200, Rafael J. Wysocki wrote:
> Hi,
>
> The following commit:
>
> commit 13523309495cdbd57a0d344c0d5d574987af007f
> Author: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
> Date: Thu Jan 21 16:49:21 2016 -0600
>
> x86/asm/acpi: Create a stack frame in do_suspend_lowlevel()
>
> do_suspend_lowlevel() is a callable non-leaf function which doesn't
> honor CONFIG_FRAME_POINTER, which can result in bad stack traces.
>
> Create a stack frame for it when CONFIG_FRAME_POINTER is enabled.
>
> is reported to cause a resume-from-hibernation regression due to an attempt
> to execute an NX page (we've seen quite a bit of that recently).
>
> I'm asking the reporter to try 4.7, but if the problem is still there, we'll
> need to revert the above I'm afraid.

So I can't resume properly from disk too, on the Intel laptop this time. Top
commit is from tip/master:

commit 516f48acf59722429acd323b3d283f74f02891fe (refs/remotes/tip/master)
Merge: a4823bbffc96 dd9506954539
Author: Ingo Molnar <mingo@xxxxxxxxxx>
Date: Mon Jul 25 08:39:43 2016 +0200

Merge branch 'linus'


So I thought it might be Josh's patch above and reverted it. No joy.

Then I remembered that I enabled CONFIG_RANDOMIZE_MEMORY for the
microcode loader breakage which we've been debugging. Turned that off
and machine resumes fine again.

It looks like

0483e1fa6e09 ("x86/mm: Implement ASLR for kernel memory regions")

broke a bunch of things. Off the top of my head, we probably should make
suspend to disk and CONFIG_RANDOMIZE_MEMORY mutually exclusive, like it
was the case with ASLR previously, AFAIR.

Adding more people to CC and leaving in the rest for reference.

> Date: Mon, 25 Jul 2016 21:16:29 +0000
> From: bugzilla-daemon@xxxxxxxxxxxxxxxxxxx
> To: rjw@xxxxxxxxxxxxx
> Subject: [Bug 150021] New: kernel panic: "kernel tried to execute
> NX-protected page" when resuming from hibernate to disk
> Message-ID: <bug-150021-76231@xxxxxxxxxxxxxxxxxxxxxxxxx/>
>
> https://bugzilla.kernel.org/show_bug.cgi?id=150021
>
> Bug ID: 150021
> Summary: kernel panic: "kernel tried to execute NX-protected
> page" when resuming from hibernate to disk
> Product: Power Management
> Version: 2.5
> Kernel Version: 4.6.x
> Hardware: All
> OS: Linux
> Tree: Mainline
> Status: NEW
> Severity: normal
> Priority: P1
> Component: Hibernation/Suspend
> Assignee: rjw@xxxxxxxxxxxxx
> Reporter: shuzzle@xxxxxxxxxxx
> Regression: No
>
> Created attachment 226381
> --> https://bugzilla.kernel.org/attachment.cgi?id=226381&action=edit
> last working .config
>
> Overview:
>
> When commit 13523309495cdbd57a0d344c0d5d574987af007f is applied to my kernel
> sources my kernel panics when trying to resume from hibernate to disk.
>
>
> Steps to Reproduce:
>
> 1. have a working hibernate/resume setup
> 2. compile 4.6.x kernel
> 3. boot and hibernate to disk
> 4. test various kernels using "git bisect".
>
>
> Actual Results: kernel panics when trying to resume from hibernate to disk.
>
> Expected Results: Resume from hibernate to disk like kernels without commit
> 13523309495cdbd57a0d344c0d5d574987af007f did.
>
>
> I attached my working .config of my 4.5.7 kernel.
>
> Any help will be appreciated. Thanks!
>
> --
> You are receiving this mail because:
> You are the assignee for the bug.


--
Regards/Gruss,
Boris.

ECO tip #101: Trim your mails when you reply.

SUSE Linux GmbH, GF: Felix ImendÃrffer, Jane Smithard, Graham Norton, HRB 21284 (AG NÃrnberg)
--