| a782d45c | 06-Mar-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: stop testing constructor order
The execution order of constructors in undefined and depends on the toolchain. While recent toolchains seems to have a stable order, it doesn't work
selftests/nolibc: stop testing constructor order
The execution order of constructors in undefined and depends on the toolchain. While recent toolchains seems to have a stable order, it doesn't work for older ones and may also change at any time.
Stop validating the order and instead only validate that all constructors are executed.
Reported-by: Willy Tarreau <[email protected]> Closes: https://lore.kernel.org/lkml/[email protected]/ Link: https://lore.kernel.org/r/20250306-nolibc-constructor-order-v1-1-68fd161cc5ec@weissschuh.net Acked-by: Willy Tarreau <[email protected]> Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| b2edaad7 | 06-Mar-2025 |
Louis Taylor <[email protected]> |
tools/nolibc: add support for openat(2)
openat is useful to avoid needing to construct relative paths, so expose a wrapper for using it directly.
Signed-off-by: Louis Taylor <[email protected]> Link
tools/nolibc: add support for openat(2)
openat is useful to avoid needing to construct relative paths, so expose a wrapper for using it directly.
Signed-off-by: Louis Taylor <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| cb839e0c | 01-Mar-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: add armthumb configuration
While nolibc does support ARM Thumb instructions, that support was not tested specifically.
Add a new test configuration for it.
Tested-by: Willy Tarre
selftests/nolibc: add armthumb configuration
While nolibc does support ARM Thumb instructions, that support was not tested specifically.
Add a new test configuration for it.
Tested-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 22edf1f8 | 09-Feb-2025 |
Thomas Weißschuh <[email protected]> |
tools/nolibc: add support for [v]sscanf()
These functions are used often, also in selftests. sscanf() itself is also used by kselftest.h itself.
The implementation is limited and only supports nume
tools/nolibc: add support for [v]sscanf()
These functions are used often, also in selftests. sscanf() itself is also used by kselftest.h itself.
The implementation is limited and only supports numeric arguments.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 9c812b01 | 06-Feb-2025 |
Thomas Weißschuh <[email protected]> |
tools/nolibc: add support for 32-bit s390
32-bit s390 is very close to the existing 64-bit implementation.
Some special handling is necessary as there is neither LLVM nor QEMU support. Also the ker
tools/nolibc: add support for 32-bit s390
32-bit s390 is very close to the existing 64-bit implementation.
Some special handling is necessary as there is neither LLVM nor QEMU support. Also the kernel itself can not build natively for 32-bit s390, so instead the test program is executed with a 64-bit kernel.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 3d1e67c6 | 06-Feb-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: rename s390 to s390x
Support for 32-bit s390 is about to be added. As "s39032" would look horrible, use the another naming scheme. 32-bit s390 is "s390" and 64-bit s390 is "s390x",
selftests/nolibc: rename s390 to s390x
Support for 32-bit s390 is about to be added. As "s39032" would look horrible, use the another naming scheme. 32-bit s390 is "s390" and 64-bit s390 is "s390x", similar to how it is handled in various toolchain components.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 00ddf4cc | 12-Feb-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: only run constructor tests on nolibc
The nolibc testsuite can be run against other libcs to test for interoperability. Some aspects of the constructor execution are not standardize
selftests/nolibc: only run constructor tests on nolibc
The nolibc testsuite can be run against other libcs to test for interoperability. Some aspects of the constructor execution are not standardized and musl does not provide all tested feature, for one it does not provide arguments to the constructors, anymore?
Skip the constructor tests on non-nolibc configurations.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/20250212-nolibc-test-constructor-v1-1-c963875b3da4@weissschuh.net Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 16681bea | 11-Feb-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: split up architecture list in run-tests.sh
The list is getting overly long and any modifications introduce a lot of noise and are prone to conflicts. Split the string into a bash a
selftests/nolibc: split up architecture list in run-tests.sh
The list is getting overly long and any modifications introduce a lot of noise and are prone to conflicts. Split the string into a bash array and break that into multiple lines.
Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 665fa8de | 09-Feb-2025 |
Thomas Weißschuh <[email protected]> |
tools/nolibc: add support for directory access
Add an implementation for directory access operations. To keep nolibc itself allocation-free, a "DIR *" does not point to any data, but directly encode
tools/nolibc: add support for directory access
Add an implementation for directory access operations. To keep nolibc itself allocation-free, a "DIR *" does not point to any data, but directly encodes a filedescriptor number, equivalent to "FILE *". Without any per-directory storage it is not possible to implement readdir() POSIX confirming. Instead only readdir_r() is provided. While readdir_r() is deprecated in glibc, the reasons for that are not applicable to nolibc.
Signed-off-by: Thomas Weißschuh <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| c1f4a7a8 | 23-Jan-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: always keep test kernel configuration up to date
Avoid using a stale test kernel configuration by always synchronizing it to the current source tree. kbuild is smart enough to avoi
selftests/nolibc: always keep test kernel configuration up to date
Avoid using a stale test kernel configuration by always synchronizing it to the current source tree. kbuild is smart enough to avoid spurious rebuilds.
Shuffle the code around a bit to keep all the commands with side-effects together.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| d7d271ec | 23-Jan-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: execute defconfig before other targets
Some targets use the test kernel configuration. Executing defconfig in the same make invocation as those targets results in errors as the con
selftests/nolibc: execute defconfig before other targets
Some targets use the test kernel configuration. Executing defconfig in the same make invocation as those targets results in errors as the configuration may be in an inconsistent state during reconfiguration. Avoid this by introducing ordering dependencies between the defconfig and some other targets.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 25d5ef9e | 23-Jan-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: drop call to mrproper target
"mrproper" unnecessarily cleans a lot of files. kbuild is smart enough to handle changed configurations, so the cleanup is not necessary and only leads
selftests/nolibc: drop call to mrproper target
"mrproper" unnecessarily cleans a lot of files. kbuild is smart enough to handle changed configurations, so the cleanup is not necessary and only leads to excessive rebuilds.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| a75b763b | 23-Jan-2025 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: drop call to prepare target
The "prepare" target does not need to be run manually. kbuild knows when to use it on its own and the target is not even documented.
Acked-by: Willy Ta
selftests/nolibc: drop call to prepare target
The "prepare" target does not need to be run manually. kbuild knows when to use it on its own and the target is not even documented.
Acked-by: Willy Tarreau <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| a47b4b9f | 21-Dec-2024 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: rename riscv to riscv64
riscv32 support is about the be added. To keep the naming clear and consistent with other architectures rename riscv to riscv64, as that is what it actually
selftests/nolibc: rename riscv to riscv64
riscv32 support is about the be added. To keep the naming clear and consistent with other architectures rename riscv to riscv64, as that is what it actually represents.
Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 349afc8a | 21-Dec-2024 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: skip tests for unimplemented syscalls
The riscv32 architecture is missing many of the older syscalls. Instead of providing wrappers for everything at once, introducing a lot of com
selftests/nolibc: skip tests for unimplemented syscalls
The riscv32 architecture is missing many of the older syscalls. Instead of providing wrappers for everything at once, introducing a lot of complexity, skip the tests for those syscalls for now.
Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|
| 4c7f09ab | 21-Dec-2024 |
Thomas Weißschuh <[email protected]> |
selftests/nolibc: use a pipe to in vfprintf tests
Not all architectures implement lseek(), for example riscv32 only implements llseek() which is not equivalent to normal lseek(). Remove the need for
selftests/nolibc: use a pipe to in vfprintf tests
Not all architectures implement lseek(), for example riscv32 only implements llseek() which is not equivalent to normal lseek(). Remove the need for lseek() by using a pipe instead.
Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Thomas Weißschuh <[email protected]>
show more ...
|