Re: [PATCH 0/9] tools/nolibc: fix build issues on aarch64 after unistd cleanup
From: Valentin Schneider
Date: Thu Jan 21 2021 - 06:19:53 EST
On 21/01/21 08:20, Willy Tarreau wrote:
> Hi Paul,
> as per the recent discussion with Mark, I've updated the nolibc header to
> reflect latest upstream which is needed to build on arm64, and I performed
> the few cleanups that Mark rightfully suggested.
> The following patches were taken from the upstream code and this time I
> carefully copied the original commit IDs in hope not to miss such fixes
> anymore in the future.
> I've build-tested these on x86_64, i586, arm(v5 & v7), arm64, mips and
> mipsel, using compilers ranging from gcc 3.4 to gcc 9.3 so I think we're
> good for these archs now.
> Just let me know if you prefer a pull request, as I can do that as well.
This lets me run the following invocation without a hitch:
tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration 10 --configs "4*SRCU-P" --trust-make
where before I would get some errors building the initrd due to missing
Tested-by: Valentin Schneider <valentin.schneider@xxxxxxx>
Thanks for having a look at this! And kuddos to Mark for nudging the
> Willy Tarreau (9):
> tools/nolibc: the definition dup() was missing
> tools/nolibc: make dup2() rely on dup3() when available
> tools/nolibc: make getpgrp() fall back to getpgid(0)
> tools/nolibc: implement fork() based on clone()
> tools/nolibc: implement poll() based on ppoll()
> tools/nolibc: get timeval, timespec and timezone from linux/time.h
> tools/nolibc: remove incorrect definitions of __ARCH_WANT_*
> tools/nolibc: emit a detailed error when missing alternate syscall
> number definitions
> tools/nolibc: fix position of -lgcc in the documented example
> tools/include/nolibc/nolibc.h | 153 +++++++++++++++++++++++++---------
> 1 file changed, 115 insertions(+), 38 deletions(-)