aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/include/asm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/include/asm')
-rw-r--r--arch/s390/include/asm/Kbuild1
-rw-r--r--arch/s390/include/asm/alternative.h1
-rw-r--r--arch/s390/include/asm/ap.h5
-rw-r--r--arch/s390/include/asm/bugs.h1
-rw-r--r--arch/s390/include/asm/segment.h1
-rw-r--r--arch/s390/include/asm/switch_to.h27
-rw-r--r--arch/s390/include/asm/vga.h1
7 files changed, 19 insertions, 18 deletions
diff --git a/arch/s390/include/asm/Kbuild b/arch/s390/include/asm/Kbuild
index 41c211a4d8b1..048450869328 100644
--- a/arch/s390/include/asm/Kbuild
+++ b/arch/s390/include/asm/Kbuild
@@ -1,3 +1,4 @@
1# SPDX-License-Identifier: GPL-2.0
1generic-y += asm-offsets.h 2generic-y += asm-offsets.h
2generic-y += cacheflush.h 3generic-y += cacheflush.h
3generic-y += clkdev.h 4generic-y += clkdev.h
diff --git a/arch/s390/include/asm/alternative.h b/arch/s390/include/asm/alternative.h
index a72002056b54..c2cf7bcdef9b 100644
--- a/arch/s390/include/asm/alternative.h
+++ b/arch/s390/include/asm/alternative.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1#ifndef _ASM_S390_ALTERNATIVE_H 2#ifndef _ASM_S390_ALTERNATIVE_H
2#define _ASM_S390_ALTERNATIVE_H 3#define _ASM_S390_ALTERNATIVE_H
3 4
diff --git a/arch/s390/include/asm/ap.h b/arch/s390/include/asm/ap.h
index c02f4aba88a6..cfce6835b109 100644
--- a/arch/s390/include/asm/ap.h
+++ b/arch/s390/include/asm/ap.h
@@ -1,12 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * Adjunct processor (AP) interfaces 3 * Adjunct processor (AP) interfaces
3 * 4 *
4 * Copyright IBM Corp. 2017 5 * Copyright IBM Corp. 2017
5 * 6 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License (version 2 only)
8 * as published by the Free Software Foundation.
9 *
10 * Author(s): Tony Krowiak <akrowia@linux.vnet.ibm.com> 7 * Author(s): Tony Krowiak <akrowia@linux.vnet.ibm.com>
11 * Martin Schwidefsky <schwidefsky@de.ibm.com> 8 * Martin Schwidefsky <schwidefsky@de.ibm.com>
12 * Harald Freudenberger <freude@de.ibm.com> 9 * Harald Freudenberger <freude@de.ibm.com>
diff --git a/arch/s390/include/asm/bugs.h b/arch/s390/include/asm/bugs.h
index 0f5bd894f4dc..aa42a179be33 100644
--- a/arch/s390/include/asm/bugs.h
+++ b/arch/s390/include/asm/bugs.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1/* 2/*
2 * S390 version 3 * S390 version
3 * Copyright IBM Corp. 1999 4 * Copyright IBM Corp. 1999
diff --git a/arch/s390/include/asm/segment.h b/arch/s390/include/asm/segment.h
index 8bfce3475b1c..97a0582b8d0f 100644
--- a/arch/s390/include/asm/segment.h
+++ b/arch/s390/include/asm/segment.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1#ifndef _ASM_SEGMENT_H 2#ifndef _ASM_SEGMENT_H
2#define _ASM_SEGMENT_H 3#define _ASM_SEGMENT_H
3 4
diff --git a/arch/s390/include/asm/switch_to.h b/arch/s390/include/asm/switch_to.h
index ec7b476c1ac5..c61b2cc1a8a8 100644
--- a/arch/s390/include/asm/switch_to.h
+++ b/arch/s390/include/asm/switch_to.h
@@ -30,21 +30,20 @@ static inline void restore_access_regs(unsigned int *acrs)
30 asm volatile("lam 0,15,%0" : : "Q" (*(acrstype *)acrs)); 30 asm volatile("lam 0,15,%0" : : "Q" (*(acrstype *)acrs));
31} 31}
32 32
33#define switch_to(prev,next,last) do { \ 33#define switch_to(prev, next, last) do { \
34 if (prev->mm) { \ 34 /* save_fpu_regs() sets the CIF_FPU flag, which enforces \
35 save_fpu_regs(); \ 35 * a restore of the floating point / vector registers as \
36 save_access_regs(&prev->thread.acrs[0]); \ 36 * soon as the next task returns to user space \
37 save_ri_cb(prev->thread.ri_cb); \ 37 */ \
38 save_gs_cb(prev->thread.gs_cb); \ 38 save_fpu_regs(); \
39 } \ 39 save_access_regs(&prev->thread.acrs[0]); \
40 save_ri_cb(prev->thread.ri_cb); \
41 save_gs_cb(prev->thread.gs_cb); \
40 update_cr_regs(next); \ 42 update_cr_regs(next); \
41 if (next->mm) { \ 43 restore_access_regs(&next->thread.acrs[0]); \
42 set_cpu_flag(CIF_FPU); \ 44 restore_ri_cb(next->thread.ri_cb, prev->thread.ri_cb); \
43 restore_access_regs(&next->thread.acrs[0]); \ 45 restore_gs_cb(next->thread.gs_cb); \
44 restore_ri_cb(next->thread.ri_cb, prev->thread.ri_cb); \ 46 prev = __switch_to(prev, next); \
45 restore_gs_cb(next->thread.gs_cb); \
46 } \
47 prev = __switch_to(prev,next); \
48} while (0) 47} while (0)
49 48
50#endif /* __ASM_SWITCH_TO_H */ 49#endif /* __ASM_SWITCH_TO_H */
diff --git a/arch/s390/include/asm/vga.h b/arch/s390/include/asm/vga.h
index d375526c261f..605dc46bac5e 100644
--- a/arch/s390/include/asm/vga.h
+++ b/arch/s390/include/asm/vga.h
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 */
1#ifndef _ASM_S390_VGA_H 2#ifndef _ASM_S390_VGA_H
2#define _ASM_S390_VGA_H 3#define _ASM_S390_VGA_H
3 4