[PATCH -fixes] riscv: uaccess: Return the number of bytes effectively copied
Björn Töpel
bjorn at kernel.org
Fri Aug 11 05:33:53 PDT 2023
Alexandre Ghiti <alex at ghiti.fr> writes:
> On 11/08/2023 13:03, Alexandre Ghiti wrote:
>> It was reported that the riscv kernel hangs while executing the test
>> in [1].
>>
>> Indeed, the test hangs when trying to write a buffer to a file. The
>> problem is that the riscv implementation of raw_copy_from_user() does not
>> return the number of bytes written when an exception happens and is fixed
>> up.
>
>
> I'll respin another version as the changelog and the title are
> incorrect: the uaccess routines should not return the number of bytes
> copied but actually the number of bytes not copied (this is what this
> patch implements).
>
> I'll wait for feedbacks before doing so!
Yikes! Nice catch.
Functions like fault_in_readable() will fail horribly w/o this. I wonder
why we haven't seen this problem more?
Feel free to add my RB to your next spin!
Reviewed-by: Björn Töpel <bjorn at rivosinc.com>
More information about the linux-riscv
mailing list