summaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/entry64.S
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-10-08 21:43:22 +0200
committerArnd Bergmann <arnd@arndb.de>2011-10-08 21:43:22 +0200
commit32d80f97fe4a86b7e9de5d13030432de115119b1 (patch)
tree54b95741024e8926348fa15d43579d49f4743553 /arch/s390/kernel/entry64.S
parent3a3ad60176fafb027bf2e4fe4793eab99ced5708 (diff)
parent100aafc992039794d0facb0e7bbd02f8a11fd1d6 (diff)
downloadop-kernel-dev-32d80f97fe4a86b7e9de5d13030432de115119b1.zip
op-kernel-dev-32d80f97fe4a86b7e9de5d13030432de115119b1.tar.gz
Merge branch 'imx/fixes' into next/fixes
Diffstat (limited to 'arch/s390/kernel/entry64.S')
-rw-r--r--arch/s390/kernel/entry64.S6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/s390/kernel/entry64.S b/arch/s390/kernel/entry64.S
index 5f729d6..713da07 100644
--- a/arch/s390/kernel/entry64.S
+++ b/arch/s390/kernel/entry64.S
@@ -1076,6 +1076,11 @@ sie_loop:
lg %r14,__LC_THREAD_INFO # pointer thread_info struct
tm __TI_flags+7(%r14),_TIF_EXIT_SIE
jnz sie_exit
+ lg %r14,__LC_GMAP # get gmap pointer
+ ltgr %r14,%r14
+ jz sie_gmap
+ lctlg %c1,%c1,__GMAP_ASCE(%r14) # load primary asce
+sie_gmap:
lg %r14,__SF_EMPTY(%r15) # get control block pointer
SPP __SF_EMPTY(%r15) # set guest id
sie 0(%r14)
@@ -1083,6 +1088,7 @@ sie_done:
SPP __LC_CMF_HPP # set host id
lg %r14,__LC_THREAD_INFO # pointer thread_info struct
sie_exit:
+ lctlg %c1,%c1,__LC_USER_ASCE # load primary asce
ni __TI_flags+6(%r14),255-(_TIF_SIE>>8)
lg %r14,__SF_EMPTY+8(%r15) # load guest register save area
stmg %r0,%r13,0(%r14) # save guest gprs 0-13
OpenPOWER on IntegriCloud