summaryrefslogtreecommitdiffstats
path: root/arch/s390
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2019-03-01 15:28:09 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2019-03-01 16:23:27 +0100
commitc8e8ed386a5191d8011d32b5663da10320e7d552 (patch)
treea694a18a69c87c2c826a6171cd75b0b2cd766602 /arch/s390
parent6d85dac2ab9292956b5864daee8e11c4e158a566 (diff)
downloadlinux-0-day-c8e8ed386a5191d8011d32b5663da10320e7d552.tar.gz
linux-0-day-c8e8ed386a5191d8011d32b5663da10320e7d552.tar.xz
s390/suspend: fix prefix register reset in swsusp_arch_resume
The reset of the prefix to zero in swsusp_arch_resume uses a 4 byte stack slot. With CONFIG_VMAP_STACK=y this is now in the vmalloc area, this works only with DAT enabled. Move the DAT disable in swsusp_arch_resume after the prefix reset. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r--arch/s390/kernel/swsusp.S6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/s390/kernel/swsusp.S b/arch/s390/kernel/swsusp.S
index 537f97fde37f9..2f997eb70e181 100644
--- a/arch/s390/kernel/swsusp.S
+++ b/arch/s390/kernel/swsusp.S
@@ -124,13 +124,13 @@ ENTRY(swsusp_arch_resume)
lghi %r2,1
brasl %r14,arch_set_page_states
- /* Deactivate DAT */
- stnsm __SF_EMPTY(%r15),0xfb
-
/* Set prefix page to zero */
xc __SF_EMPTY(4,%r15),__SF_EMPTY(%r15)
spx __SF_EMPTY(%r15)
+ /* Deactivate DAT */
+ stnsm __SF_EMPTY(%r15),0xfb
+
/* Restore saved image */
larl %r1,restore_pblist
lg %r1,0(%r1)