Bug 198763

Summary: Suspend2ram broken on 4.16-rcX (32-bit non-PAE)
Product: Power Management Reporter: Woody Suwalski (terraluna977)
Component: Hibernation/SuspendAssignee: Rafael J. Wysocki (rjw)
Status: RESOLVED CODE_FIX    
Severity: high CC: regressions
Priority: P1    
Hardware: i386   
OS: Linux   
Kernel Version: 4.15.2 4.16-rcX 4.14.21 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: Kernel .config file
PAE config with working s2ram
non-PAE config resulting in broken s2ram

Description Woody Suwalski 2018-02-12 14:28:59 UTC
Created attachment 274127 [details]
Kernel .config file

The patch 
commit 62c00e6122a6b5aa7b1350023967a2d7a12b54c9
Author: William Grant <william.grant@canonical.com>
Date:   Tue Jan 30 22:22:55 2018 +1100

    x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP

is breaking the suspend on x86_i386.

The device enters sleep state OK, but during wakeup the machine is rebooted.

The removing of the above patch is restoring the suspend functionality.

Kernel config attached.
Comment 1 Woody Suwalski 2018-02-12 23:18:56 UTC
The same problem is seen on 4.16-rc1
Comment 2 Woody Suwalski 2018-02-18 15:44:41 UTC
After more investigation I have isolated the issue to be happening only on non-pae builds.
Kernels configured to use pae can wake from suspend2ram without problems.

The way to trigger the problem is to switch the config from CONFIG_X86_PAE to CONFIG_HIGHMEM4G (and "automatic" dependencies, like state of PHYS_ADDR_T_64BIT, PGTABLE_LEVELS..).

Tested with and without PAE on 4.15.4 and 4.16-rc1
Comment 3 Woody Suwalski 2018-02-19 10:26:28 UTC
Created attachment 274231 [details]
PAE config with working s2ram
Comment 4 Woody Suwalski 2018-02-19 10:28:08 UTC
Created attachment 274233 [details]
non-PAE config resulting in broken s2ram
Comment 5 Woody Suwalski 2018-02-19 10:28:49 UTC
Updated the config file(s) with 4.15.4 version
Comment 6 Woody Suwalski 2018-02-24 17:37:18 UTC
I see that the same problem is now present in 4.14.21
Comment 7 The Linux kernel's regression tracker (Thorsten Leemhuis) 2018-03-05 14:28:37 UTC
Woddy, can you close this please, as this afaics was fixed by https://git.kernel.org/torvalds/c/945fd17ab6bab8a4d05da6c3170519fbcfe62ddb Or did I  get something wrong?
Comment 8 Woody Suwalski 2018-03-05 16:20:42 UTC
The issue is fixed now in 4.16-rc4 by Thomas Gleixner's patch.
Comment 9 Woody Suwalski 2018-03-05 16:22:02 UTC
Marking resolved trusting that the patch will appear in the stable 4.15 and 4.14 releases.