summaryrefslogtreecommitdiff |
diff options
author | Jiri Kosina <jkosina@suse.cz> | 2018-01-09 13:19:50 +0100 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2018-01-09 13:19:50 +0100 |
commit | f3c1b749edc6b9993ab5132ef7585598158444c9 (patch) | |
tree | 677f3942e2fcdfe36bc11fc585fee48ad7564a81 | |
parent | 8ac207873e10a97469079b6f566078fdf802b7f6 (diff) |
Refresh patches.arch/s390-sles11sp4-99-03-nobp.patch: fix spruios nobp; update to newerrpm-3.0.101-108.24
version from IBM.
-rw-r--r-- | patches.arch/s390-sles11sp4-99-03-nobp.patch | 88 |
1 files changed, 65 insertions, 23 deletions
diff --git a/patches.arch/s390-sles11sp4-99-03-nobp.patch b/patches.arch/s390-sles11sp4-99-03-nobp.patch index 81ad06f195..8dd849c639 100644 --- a/patches.arch/s390-sles11sp4-99-03-nobp.patch +++ b/patches.arch/s390-sles11sp4-99-03-nobp.patch @@ -6,14 +6,6 @@ Patch-mainline: Not yet, under development Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> --- - arch/s390/include/asm/processor.h | 1 - arch/s390/kernel/alternative.c | 13 ++++++ - arch/s390/kernel/entry.S | 73 +++++++++++++++++++++++++++--------- - arch/s390/kernel/entry64.S | 76 ++++++++++++++++++++++++++++++-------- - arch/s390/kernel/ipl.c | 1 - arch/s390/kernel/smp.c | 2 + - arch/s390/kernel/vmlinux.lds.S | 3 + - 7 files changed, 136 insertions(+), 33 deletions(-) --- a/arch/s390/include/asm/processor.h +++ b/arch/s390/include/asm/processor.h @@ -115,14 +107,15 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> CREATE_STACK_FRAME __LC_SAVE_AREA mvc SP_PSW(8,%r15),__LC_SVC_OLD_PSW mvc SP_ILC(4,%r15),__LC_SVC_ILC -@@ -264,7 +288,11 @@ sysc_tif: +@@ -263,8 +287,12 @@ sysc_return: + sysc_tif: tm __TI_flags+3(%r12),_TIF_WORK_SVC bnz BASED(sysc_work) # there is work to do (signals etc.) ++ BPON sysc_restore: - RESTORE_ALL __LC_RETURN_PSW,1 + mvc __LC_RETURN_PSW(8),SP_PSW(%r15) + lm %r0,%r15,SP_R0(%r15) -+ BPON + stpt __LC_EXIT_TIMER + lpsw __LC_RETURN_PSW sysc_done: @@ -136,7 +129,31 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> SAVE_ALL_BASE __LC_SAVE_AREA tm __LC_PGM_INT_CODE+1,0x80 # check whether we got a per exception bnz BASED(pgm_per) # got per exception -> special case -@@ -569,6 +598,7 @@ kernel_per: +@@ -479,7 +508,10 @@ pgm_no_vtime: + la %r2,SP_PTREGS(%r15) # address of register-save area + basr %r14,%r1 # branch to interrupt-handler + pgm_exit: +- b BASED(sysc_return) ++ LOCKDEP_SYS_EXIT ++ tm SP_PSW+1(%r15),0x01 # returning to user ? ++ bno BASED(sysc_restore) ++ b BASED(sysc_tif) + + # + # handle per exception +@@ -527,7 +559,10 @@ pgm_no_vtime2: + la %r2,SP_PTREGS(%r15) # address of register-save area + basr %r14,%r1 # branch to interrupt-handler + pgm_exit2: +- b BASED(sysc_return) ++ LOCKDEP_SYS_EXIT ++ tm SP_PSW+1(%r15),0x01 # returning to user ? ++ bno BASED(sysc_restore) ++ b BASED(sysc_tif) + + # + # it was a single stepped SVC that is causing all the trouble +@@ -569,6 +604,7 @@ kernel_per: io_int_handler: stck __LC_INT_CLOCK stpt __LC_ASYNC_ENTER_TIMER @@ -144,7 +161,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> SAVE_ALL_ASYNC __LC_IO_OLD_PSW,__LC_SAVE_AREA+16 CREATE_STACK_FRAME __LC_SAVE_AREA+16 mvc SP_PSW(8,%r15),0(%r12) # move user PSW to stack -@@ -590,7 +620,15 @@ io_tif: +@@ -590,7 +626,15 @@ io_tif: tm __TI_flags+3(%r12),_TIF_WORK_INT bnz BASED(io_work) # there is work to do (signals etc.) io_restore: @@ -161,7 +178,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> io_done: # -@@ -707,6 +745,7 @@ io_notify_resume: +@@ -707,6 +751,7 @@ io_notify_resume: ext_int_handler: stck __LC_INT_CLOCK stpt __LC_ASYNC_ENTER_TIMER @@ -169,7 +186,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> SAVE_ALL_ASYNC __LC_EXT_OLD_PSW,__LC_SAVE_AREA+16 CREATE_STACK_FRAME __LC_SAVE_AREA+16 mvc SP_PSW(8,%r15),0(%r12) # move user PSW to stack -@@ -734,6 +773,7 @@ __critical_end: +@@ -734,6 +779,7 @@ __critical_end: .globl mcck_int_handler mcck_int_handler: stck __LC_MCCK_CLOCK @@ -177,7 +194,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> spt __LC_CPU_TIMER_SAVE_AREA # revalidate cpu timer lm %r0,%r15,__LC_GPREGS_SAVE_AREA # revalidate gprs SAVE_ALL_BASE __LC_SAVE_AREA+32 -@@ -803,15 +843,12 @@ mcck_no_vtime: +@@ -803,15 +849,12 @@ mcck_no_vtime: mcck_return: mvc __LC_RETURN_MCCK_PSW(8),SP_PSW(%r15) # move return PSW ni __LC_RETURN_MCCK_PSW+1,0xfd # clear wait state bit @@ -268,15 +285,16 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> CREATE_STACK_FRAME __LC_SAVE_AREA mvc SP_PSW(16,%r15),__LC_SVC_OLD_PSW mvc SP_ILC(4,%r15),__LC_SVC_ILC -@@ -292,7 +313,14 @@ sysc_tif: +@@ -291,8 +312,15 @@ sysc_return: + sysc_tif: tm __TI_flags+7(%r12),_TIF_WORK_SVC jnz sysc_work # there is work to do (signals etc.) ++ BPON sysc_restore: - RESTORE_ALL __LC_RETURN_PSW,1 + mvc __LC_RETURN_PSW(16),SP_PSW(%r15) + lg %r14,__LC_VDSO_PER_CPU + lmg %r0,%r13,SP_R0(%r15) -+ BPON + stpt __LC_EXIT_TIMER + mvc __VDSO_ECTG_BASE(16,%r14),__LC_EXIT_TIMER + lmg %r14,%r15,SP_R14(%r15) @@ -292,7 +310,31 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> tm __LC_PGM_INT_CODE+1,0x80 # check whether we got a per exception jnz pgm_per # got per exception -> special case SAVE_ALL_PGM __LC_PGM_OLD_PSW,__LC_SAVE_AREA -@@ -598,6 +627,7 @@ kernel_per: +@@ -503,7 +532,10 @@ pgm_no_vtime: + la %r2,SP_PTREGS(%r15) # address of register-save area + basr %r14,%r1 # branch to interrupt-handler + pgm_exit: +- j sysc_return ++ LOCKDEP_SYS_EXIT ++ tm SP_PSW+1(%r15),0x01 # returning to user ? ++ jno sysc_restore ++ j sysc_tif + + # + # handle per exception +@@ -557,7 +589,10 @@ pgm_no_vtime2: + la %r2,SP_PTREGS(%r15) # address of register-save area + basr %r14,%r1 # branch to interrupt-handler + pgm_exit2: +- j sysc_return ++ LOCKDEP_SYS_EXIT ++ tm SP_PSW+1(%r15),0x01 # returning to user ? ++ jno sysc_restore ++ j sysc_tif + + # + # it was a single stepped SVC that is causing all the trouble +@@ -598,6 +633,7 @@ kernel_per: io_int_handler: stck __LC_INT_CLOCK stpt __LC_ASYNC_ENTER_TIMER @@ -300,7 +342,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> SAVE_ALL_ASYNC __LC_IO_OLD_PSW,__LC_SAVE_AREA+40 CREATE_STACK_FRAME __LC_SAVE_AREA+40 mvc SP_PSW(16,%r15),0(%r12) # move user PSW to stack -@@ -620,7 +650,18 @@ io_tif: +@@ -620,7 +656,18 @@ io_tif: tm __TI_flags+7(%r12),_TIF_WORK_INT jnz io_work # there is work to do (signals etc.) io_restore: @@ -320,7 +362,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> io_done: # -@@ -733,6 +774,7 @@ io_notify_resume: +@@ -733,6 +780,7 @@ io_notify_resume: ext_int_handler: stck __LC_INT_CLOCK stpt __LC_ASYNC_ENTER_TIMER @@ -328,7 +370,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> SAVE_ALL_ASYNC __LC_EXT_OLD_PSW,__LC_SAVE_AREA+40 CREATE_STACK_FRAME __LC_SAVE_AREA+40 mvc SP_PSW(16,%r15),0(%r12) # move user PSW to stack -@@ -763,6 +805,7 @@ __critical_end: +@@ -763,6 +811,7 @@ __critical_end: .globl mcck_int_handler mcck_int_handler: stck __LC_MCCK_CLOCK @@ -336,7 +378,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> la %r1,4095 # revalidate r1 spt __LC_CPU_TIMER_SAVE_AREA-4095(%r1) # revalidate cpu timer lmg %r0,%r15,__LC_GPREGS_SAVE_AREA-4095(%r1)# revalidate gprs -@@ -838,6 +881,7 @@ mcck_return: +@@ -838,6 +887,7 @@ mcck_return: lmg %r0,%r15,SP_R0(%r15) # load gprs 0-15 tm __LC_RETURN_MCCK_PSW+1,0x01 # returning to user ? jno 0f @@ -344,7 +386,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz> stpt __LC_EXIT_TIMER 0: lpswe __LC_RETURN_MCCK_PSW # back to caller mcck_done: -@@ -1100,8 +1144,10 @@ sie_loop: +@@ -1100,8 +1150,10 @@ sie_loop: jnz sie_exit lg %r14,__SF_EMPTY(%r15) # get control block pointer SPP __SF_EMPTY(%r15) # set guest id |