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 __NR_foo. Tested-by: Valentin Schneider <valentin.schnei...@arm.com> Thanks for having a look at this! And kuddos to Mark for nudging the right people. > Thanks! > Willy > > > 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(-) > > -- > 2.28.0