On 7/19/2026 12:47 AM, Ziyang Zhang wrote: > The comment claimed every Linux ABI keeps its syscall numbers well below the > minimum, and that the minimum is all N has to satisfy. Neither holds. > > MIPS O32 bases its numbering at 4000, so the default 4096 is its getpriority. > Raising N does not rescue it either, because O32 answers numbers its table > does > not define with ENOSYS before the filter runs, which leaves no number that is > both free and reachable on that ABI. arm32 bounds N from above too, with > ENOSYS > or SIGILL past ARM_NR_BASE. Say all of this, so the number can be chosen with > the target in mind. > > guest_base == 0 is not the only requirement either. Host pointers are written > back through the caller's out pointers, so the guest must match the host's > pointer width and endianness. Fold that into the existing warning. > > Also assert the two out pointers that lacked it, and point at Lorelei for > argument marshalling, callbacks and variadic functions. > > Co-authored-by: Kailiang Xu <[email protected]> > Co-authored-by: Mingyuan Xia <[email protected]> > Signed-off-by: Ziyang Zhang <[email protected]> > --- > contrib/plugins/dlcall.c | 32 +++++++++++++++++++++++--------- > 1 file changed, 23 insertions(+), 9 deletions(-) >
Reviewed-by: Pierrick Bouvier <[email protected]>
