diff options
author | Martin Schwidefsky | 2014-07-15 10:41:37 +0200 |
---|---|---|
committer | Martin Schwidefsky | 2014-07-16 10:48:12 +0200 |
commit | 9f86745722d95bc7f855069bd82285bd10dc97ff (patch) | |
tree | 83d3dade5bdf6f4dfcd9cb5f957d41aa1800bdb1 | |
parent | s390/zcrypt: improve device probing for zcrypt adapter cards (diff) | |
download | kernel-qcow2-linux-9f86745722d95bc7f855069bd82285bd10dc97ff.tar.gz kernel-qcow2-linux-9f86745722d95bc7f855069bd82285bd10dc97ff.tar.xz kernel-qcow2-linux-9f86745722d95bc7f855069bd82285bd10dc97ff.zip |
s390: fix restore of invalid floating-point-control
The fixup of the inline assembly to restore the floating-point-control
register needs to check for instruction address *after* the lfcp
instruction as the specification and data exceptions are suppresssing.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r-- | arch/s390/include/asm/switch_to.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/s390/include/asm/switch_to.h b/arch/s390/include/asm/switch_to.h index df38c70cd59e..18ea9e3f8142 100644 --- a/arch/s390/include/asm/switch_to.h +++ b/arch/s390/include/asm/switch_to.h @@ -51,8 +51,8 @@ static inline int restore_fp_ctl(u32 *fpc) return 0; asm volatile( - "0: lfpc %1\n" - " la %0,0\n" + " lfpc %1\n" + "0: la %0,0\n" "1:\n" EX_TABLE(0b,1b) : "=d" (rc) : "Q" (*fpc), "0" (-EINVAL)); |