[PATCH v3 00/12] nolibc: add generic part1 of prepare for rv32

Willy Tarreau w at 1wt.eu
Sun Jun 4 05:54:59 PDT 2023


On Sun, Jun 04, 2023 at 08:49:52AM +0200, Thomas Weißschuh wrote:
> On 2023-06-03 15:59:29+0800, Zhangjin Wu wrote:
> > Hi, Willy
> > 
> > This is the v3 generic part1 for rv32, all of the found issues of v2
> > part1 [1] have been fixed up, several generic patches have been fixed up
> > and merged from v2 part2 [2] to this series, the standalone test_fork
> > patch [4] is merged with a Reviewed-by line into this series too.
> > 
> > This series is based on 20230528-nolibc-rv32+stkp5 branch of [5].
> > 
> > Changes from v2 -> v3:
> > 
> > * selftests/nolibc: fix up compile warning with glibc on x86_64
> > 
> >   Use simpler 'long long' conversion instead of old #ifdef ...
> >   (Suggestion from Willy)
> > 
> > * tools/nolibc: add missing nanoseconds support for __NR_statx
> > 
> >   Split the compound assignment into two single assignments
> >   (Suggestion from Thomas)
> > 
> > * selftests/nolibc: add new gettimeofday test cases
> > 
> >   Removed the gettimeofday(NULL, &tz)
> >   (Suggestion from Thomas)
> > 
> > All of the commit messages have been re-checked, some missing
> > Suggested-by lines are added.
> > 
> > The whole patchset have been tested on arm, aarch64, rv32 and rv64, no
> > regressions (the next compile patchset is required to do rv32 test).
> > 
> > The nolibc-test has been tested with glibc on x86_64 too.
> > 
> > Btw, we have found such poll failures on arm (not introduced by this
> > patchset), this will be fixed in our coming ppoll_time64 patchset:
> > 
> > 48 poll_null = -1 ENOSYS                                        [FAIL]
> > 49 poll_stdout = -1 ENOSYS                                      [FAIL]
> > 50 poll_fault = -1 ENOSYS  != (-1 EFAULT)                       [FAIL]
> > 
> > And the gettimeofday_null removal patch from Thomas [3] may conflicts
> > with the gettimeofday removal and addition patches, but it is not hard
> > to fix.
> > 
> > Best regards,
> > Zhangjin
> > ---
> > 
> > [1]: https://lore.kernel.org/linux-riscv/cover.1685362482.git.falcon@tinylab.org/T/#t
> > [2]: https://lore.kernel.org/linux-riscv/cover.1685387484.git.falcon@tinylab.org/T/#t
> > [3]: https://lore.kernel.org/lkml/20230530-nolibc-gettimeofday-v1-1-7307441a002b@weissschuh.net/
> > [4]: https://lore.kernel.org/lkml/61bdfe7bacebdef8aa9195f6f2550a5b0d33aab3.1685426545.git.falcon@tinylab.org/
> > [5]: https://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/nolibc.git
> > 
> > Zhangjin Wu (12):
> >   selftests/nolibc: syscall_args: use generic __NR_statx
> >   tools/nolibc: add missing nanoseconds support for __NR_statx
> >   selftests/nolibc: allow specify extra arguments for qemu
> >   selftests/nolibc: fix up compile warning with glibc on x86_64
> >   selftests/nolibc: not include limits.h for nolibc
> >   selftests/nolibc: use INT_MAX instead of __INT_MAX__
> >   tools/nolibc: arm: add missing my_syscall6
> >   tools/nolibc: open: fix up compile warning for arm
> >   selftests/nolibc: support two errnos with EXPECT_SYSER2()
> >   selftests/nolibc: remove gettimeofday_bad1/2 completely
> >   selftests/nolibc: add new gettimeofday test cases
> >   selftests/nolibc: test_fork: fix up duplicated print
> > 
> >  tools/include/nolibc/arch-arm.h              | 23 +++++++++++
> >  tools/include/nolibc/stdint.h                | 14 +++++++
> >  tools/include/nolibc/sys.h                   | 39 +++++++++---------
> >  tools/testing/selftests/nolibc/Makefile      |  2 +-
> >  tools/testing/selftests/nolibc/nolibc-test.c | 42 ++++++++++++--------
> >  5 files changed, 85 insertions(+), 35 deletions(-)
> 
> For the full series:
> 
> Reviewed-by: Thomas Weißschuh <linux at weissschuh.net>

I forgot to say, all the series is now queued, and I squashed the
__NR_statx fix into Thomas' patch.

Willy



More information about the linux-riscv mailing list