linux-user: Rewrite do_getdents, do_getdents64
commitaee14c77f42533f2480dfa8552f531efde6c19ee
authorRichard Henderson <richard.henderson@linaro.org>
Sun, 14 Nov 2021 10:35:39 +0000 (14 11:35 +0100)
committerLaurent Vivier <laurent@vivier.eu>
Sun, 21 Nov 2021 15:19:17 +0000 (21 16:19 +0100)
tree3e9551fec316da1b1ff381eeef52be3c29fc6aad
parent1962cb0029197bc0cd4bb0461171cda677e64966
linux-user: Rewrite do_getdents, do_getdents64

Always allocate host storage; this ensures that the struct
is sufficiently aligned for the host.  Merge the three host
implementations of getdents via a few ifdefs.  Utilize the
same method for do_getdents64.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/704
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20211114103539.298686-5-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
linux-user/syscall.c