sparc: fix accurate exception reporting in copy_{from_to}_user for Niagara
The referenced commit introduced exception handlers on user-space memory references in copy_from_user and copy_to_user. These handlers return from the respective function and calculate the remaining bytes left to copy using the current register contents. This commit fixes a couple of bad calculations and a broken epilogue in the exception handlers. This will prevent crashes and ensure correct return values of copy_from_user and copy_to_user in the faulting case. The behaviour of memcpy stays unchanged. Fixes: 7ae3aaf5 ("sparc64: Convert NGcopy_{from,to}_user to accurate exception reporting.") Tested-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> # on SPARC T4 with modified kernel to use Niagara 1 code Tested-by: Magnus Lindholm <linmag7@gmail.com> # on Sun Fire T2000 Signed-off-by:Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de> Tested-by: Ethan Hawke <ehawk@ember.systems> # on Sun Fire T2000 Tested-by: Ken Link <iissmart@numberzero.org> # on Sun Fire T1000 Reviewed-by:
Andreas Larsson <andreas@gaisler.com> Link: https://lore.kernel.org/r/20250905-memcpy_series-v4-3-1ca72dda195b@mkarcher.dialup.fu-berlin.de Signed-off-by:
Andreas Larsson <andreas@gaisler.com>
Loading
Please sign in to comment