Strange EFAULT on mips64el returned by syscall when another thread is forking

Xi Ruoyao xry111@xry111.site
Wed Jan 24 21:38:16 GMT 2024


On Thu, 2024-01-25 at 05:32 +0800, Xi Ruoyao wrote:

/* snip */

> and the "interesting" aspects:
> 
> 1. If I change the third parameter of "read" to any value >= 8, it no
> longer fails.  But it fails with any integer in [1, 8).
> 2. It fails no matter if I initialize buf.
> 3. It does not fail on arm64 (the only other port using
> lock_mm_and_find_vma I have access to).

Correction: I'd not realized many ports use lock_mm_and_find_vma even
before this series of changes.  I also have access to x86_64 and
loongarch64, and the failure seems specific to MIPS.

-- 
Xi Ruoyao <xry111@xry111.site>
School of Aerospace Science and Technology, Xidian University


More information about the Libc-alpha mailing list