[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 3 Mar 2022 17:21:33 +0800
From: David Gow <davidgow@...gle.com>
To: Kees Cook <keescook@...omium.org>
Cc: "Gustavo A. R. Silva" <gustavoars@...nel.org>,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Vitor Massaru Iha <vitor@...saru.org>,
Daniel Latypov <dlatypov@...gle.com>,
Anton Ivanov <anton.ivanov@...bridgegreys.com>,
Jeff Dike <jdike@...toit.com>,
Richard Weinberger <richard@....at>,
Masahiro Yamada <masahiroy@...nel.org>,
Arnd Bergmann <arnd@...db.de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-um <linux-um@...ts.infradead.org>,
linux-kbuild@...r.kernel.org,
KUnit Development <kunit-dev@...glegroups.com>,
llvm@...ts.linux.dev, x86@...nel.org,
linux-hardening@...r.kernel.org
Subject: Re: [PATCH v3 0/7] Convert overflow and stackinit to KUnit
On Mon, Feb 28, 2022 at 2:45 AM Kees Cook <keescook@...omium.org> wrote:
>
> 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%)
>
> --
Thanks for putting all of these together. Apart from some minor
checkpatch warnings (some of which are inevitable, some of which are
trivial "don't put a space here" things) and an issue with the KUnit
userspace compatibility layer misreporting failed suites, this all
worked pretty well on my machine.
(There's also still a warning with -mno-global-merge on uml
USER_CFLAGS users which shows up with clang, but that's a minor issue
at best. I've sent out a patch to fix it up, though I'm not 100%
convinced it's the right solution:
https://lore.kernel.org/linux-kselftest/20220303090643.241747-1-davidgow@google.com/
)
Otherwise, this series is:
Tested-by: David Gow <davidgow@...gle.com>
(And, as a note to anyone else trying to apply it on another branch,
it has a prerequisite of:
https://lore.kernel.org/linux-hardening/20220124232342.3113350-1-keescook@chromium.org/
)
Cheers,
-- David
Download attachment "smime.p7s" of type "application/pkcs7-signature" (4003 bytes)
Powered by blists - more mailing lists