Files
linux-bredos/arch/s390/include/asm
Heiko Carstens 602490b469 s390/vx: fix save/restore of fpu kernel context
[ Upstream commit e6b2dab418 ]

The KERNEL_FPR mask only contains a flag for the first eight vector
registers. However floating point registers overlay parts of the first
sixteen vector registers.

This could lead to vector register corruption if a kernel fpu context uses
any of the vector registers 8 to 15 and is interrupted or calls a
KERNEL_FPR context. If that context uses also vector registers 8 to 15,
their contents will be corrupted on return.

Luckily this is currently not a real bug, since the kernel has only one
KERNEL_FPR user with s390_adjust_jiffies() and it is only using floating
point registers 0 to 2.

Fix this by using the correct bits for KERNEL_FPR.

Fixes: 7f79695cc1 ("s390/fpu: improve kernel_fpu_[begin|end]")
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-01 12:42:26 +00:00
..
2021-07-27 09:39:15 +02:00
2023-07-03 11:19:42 +02:00
2022-05-11 14:40:57 +02:00
2023-06-05 09:36:39 +02:00
2023-06-05 09:36:40 +02:00
2023-07-24 12:12:24 +02:00
2022-07-13 14:42:11 +00:00
2023-02-15 11:07:01 +01:00
2023-08-18 10:12:34 -07:00
2022-12-06 16:18:22 +01:00
2022-03-08 00:33:01 +01:00
2023-08-09 15:20:51 +02:00
2023-07-03 11:19:42 +02:00
2021-08-03 14:31:40 +02:00
2022-07-11 09:54:24 +02:00
2023-06-05 09:36:39 +02:00
2022-06-30 19:40:36 +02:00
2023-08-30 11:03:27 +02:00
2022-05-11 14:40:57 +02:00
2023-01-04 17:54:50 +01:00
2022-01-30 21:17:00 -05:00
2021-07-08 15:37:28 +02:00