On Sat, Jul 12, 2025 at 11:00:55AM +0200, Thomas Weißschuh wrote:
Nolibc assumes that the kernel ABI is using a time values that are as large as a long integer. For most ABIs this holds true. But for x32 this is not correct, as it uses 32bit longs but 64bit times.
Also the 'struct stat' implementation of nolibc relies on timespec::tv_sec and time_t being the same type. While timespec::tv_sec comes from the kernel and is of type __kernel_old_time_t, time_t is defined within nolibc.
Switch to the __kernel_old_time_t to always get the correct type.
Signed-off-by: Thomas Weißschuh linux@weissschuh.net
Great! I didn't know we could support x32 and thought it was phased out. But if it works it can be convenient for those seeking smaller binaries.
Both patches look good to me, for the whole series:
Acked-by: Willy Tarreau w@1wt.eu
Thanks! Willy