]> www.infradead.org Git - users/dwmw2/linux.git/commit
s390/fpu: Add fpc exception handler / remove fixup section again
authorHeiko Carstens <hca@linux.ibm.com>
Fri, 10 Jan 2025 10:52:17 +0000 (11:52 +0100)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Sun, 26 Jan 2025 16:24:04 +0000 (17:24 +0100)
commitae02615b7fcea9ce9a4ec40b3c5b5dafd322b179
treeb35070ba9ec74ce91395cb0a7ae486e9df11fa89
parentf684b7954ea6b29662caa25e0a4941231c05e413
s390/fpu: Add fpc exception handler / remove fixup section again

The fixup section was added again by mistake when test_fp_ctl() was
removed. The reason for the removal of the fixup section is described in
commit 484a8ed8b7d1 ("s390/extable: add dedicated uaccess handler").
Remove it again for the same reason.

Add an exception handler which handles exceptions when the floating point
control register is attempted to be set to invalid values. The exception
handler sets the floating point control register to zero and continues
execution at the specified address.

The new sfpc inline assembly is open-coded to make back porting a bit
easier.

Fixes: 702644249d3e ("s390/fpu: get rid of test_fp_ctl()")
Cc: stable@vger.kernel.org
Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
arch/s390/include/asm/asm-extable.h
arch/s390/include/asm/fpu-insn.h
arch/s390/kernel/vmlinux.lds.S
arch/s390/mm/extable.c