OpenCloudOS-Kernel/arch/s390/lib
Nico Boehr 012a224e1f s390/uaccess: introduce bit field for OAC specifier
Previously, we've used  magic values to specify the OAC
(operand-access control) for mvcos.

Instead we introduce a bit field for it.

When using a bit field, we cannot use an immediate value with K
constraint anymore, since GCC older than 10 doesn't recognize
the bit field union as a compile time constant.
To make things work with older compilers,
load the OAC value through a register.

Bloat-o-meter reports a slight increase in kernel size with this change:
Total: Before=15692135, After=15693015, chg +0.01%

Signed-off-by: Nico Boehr <nrb@linux.ibm.com>
Co-developed-by: Janis Schoetterl-Glausch <scgl@linux.ibm.com>
Signed-off-by: Janis Schoetterl-Glausch <scgl@linux.ibm.com>
Link: https://lore.kernel.org/r/20220111100003.743116-1-scgl@linux.ibm.com
Cc: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2022-01-17 14:13:09 +01:00
..
Makefile kprobes: add testcases for s390 2021-10-04 09:49:37 +02:00
delay.c s390/delay: get rid of not needed header includes 2021-07-27 09:39:22 +02:00
error-inject.c s390: enable HAVE_FUNCTION_ERROR_INJECTION 2020-07-27 10:33:28 +02:00
find.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mem.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
probes.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spinlock.c s390/spinlock: remove incorrect kernel doc indicator 2021-10-26 15:21:30 +02:00
string.c s390 updates for the 5.16 merge window 2021-11-06 14:48:06 -07:00
test_kprobes.c kprobes: add testcases for s390 2021-10-04 09:49:37 +02:00
test_kprobes.h kprobes: add testcases for s390 2021-10-04 09:49:37 +02:00
test_kprobes_asm.S kprobes: add testcases for s390 2021-10-04 09:49:37 +02:00
test_unwind.c s390/test_unwind: use raw opcode instead of invalid instruction 2021-11-25 13:38:31 +01:00
uaccess.c s390/uaccess: introduce bit field for OAC specifier 2022-01-17 14:13:09 +01:00
xor.c s390/lib,xor: get rid of register asm 2021-06-28 11:18:28 +02:00