In the Linux kernel, the following vulnerability has been resolved: sparc: fix accurate exception reporting in copy{fromto}user for UltraSPARC III Anthony Yznaga tracked down that a BUGON in ext4 code with large folios enabled resulted from copyfromuser() returning impossibly large values greater than the size to be copied. This lead to _copyfromiter() returning impossible values instead of the actual number of bytes it was able to copy. The BUGON has been reported in https://lore.kernel.org/r/b14f55642207e63e907965e209f6323a0df6dcee.camel@physik.fu-berlin.de The referenced commit introduced exception handlers on user-space memory references in copyfromuser and copytouser. These handlers return from the respective function and calculate the remaining bytes left to copy using the current register contents. The exception handlers expect that %o2 has already been masked during the bulk copy loop, but the masking was performed after that loop. This will fix the return value of copyfromuser and copytouser in the faulting case. The behaviour of memcpy stays unchanged.