[PATCH v3 0/7] Convert overflow and stackinit to KUnit

Kees Cook
2022-02-27T18:45:10Z

Hi,

These changes all build on each other, so I'm sending this as a series
to hopefully reduce confusion. I chose "v3" because it seemed the least
confusing of various options.

The um changes are needed to get Clang building with um to test the
stackinit KUnit test more easily (i.e. needing neither GCC 12 nor QEMU).

-Kees

David Gow (2):
um: Cleanup syscall_handler_t definition/cast, fix warning
um: Remove unused timeval_to_ns() function

Kees Cook (5):
overflow: Provide constant expression struct_size
lib: overflow: Convert to Kunit
um: Allow builds with Clang
lib: stackinit: Convert to KUnit
UAPI: Introduce KUnit userspace compatibility

arch/um/os-Linux/execvp.c | 1 +
arch/um/os-Linux/time.c | 6 -
arch/x86/um/shared/sysdep/syscalls_64.h | 5 +-
arch/x86/um/user-offsets.c | 9 +-
include/linux/overflow.h | 10 +-
include/uapi/misc/kunit.h | 181 +++++++
lib/Kconfig.debug | 38 +-
lib/Makefile | 6 +-
lib/{test_overflow.c => overflow_kunit.c} | 562 +++++++++-----------
lib/{test_stackinit.c => stackinit_kunit.c} | 268 ++++------
scripts/Makefile.clang | 1 +
11 files changed, 593 insertions(+), 494 deletions(-)
create mode 100644 include/uapi/misc/kunit.h
rename lib/{test_overflow.c => overflow_kunit.c} (54%)
rename lib/{test_stackinit.c => stackinit_kunit.c} (67%)

--
2.32.0