Re: [PATCH] kunit: Add printf attribute to fail_current_test_impl

From: Rae Moar
Date: Tue Feb 07 2023 - 17:04:21 EST


On Fri, Feb 3, 2023 at 11:05 PM David Gow <davidgow@xxxxxxxxxx> wrote:
>
> Add the gnu_printf (__printf()) attribute to the
> kunit_fail_current_test() implementation in
> __kunit_fail_current_test_impl(). While it's not actually useful here,
> as this function is never called directly, it nevertheless was
> triggering -Wsuggest-attribute=format warnings, so we should add it to
> reduce the noise.
>
> Fixes: cc3ed2fe5c93 ("kunit: Add "hooks" to call into KUnit when it's built as a module")
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: David Gow <davidgow@xxxxxxxxxx>

Hi David,

I have tested and reviewed this and it looks good to me.

Thanks for fixing this!

Reviewed-by: Rae Moar <rmoar@xxxxxxxxxx>

> ---
> lib/kunit/hooks-impl.h | 4 +++-
> lib/kunit/test.c | 2 +-
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/lib/kunit/hooks-impl.h b/lib/kunit/hooks-impl.h
> index ec745a39832c..4e71b2d0143b 100644
> --- a/lib/kunit/hooks-impl.h
> +++ b/lib/kunit/hooks-impl.h
> @@ -15,7 +15,9 @@
> #include <kunit/test-bug.h>
>
> /* List of declarations. */
> -void __kunit_fail_current_test_impl(const char *file, int line, const char *fmt, ...);
> +void __printf(3, 4) __kunit_fail_current_test_impl(const char *file,
> + int line,
> + const char *fmt, ...);
> void *__kunit_get_static_stub_address_impl(struct kunit *test, void *real_fn_addr);
>
> /* Code to set all of the function pointers. */
> diff --git a/lib/kunit/test.c b/lib/kunit/test.c
> index 51cae59d8aae..c9e15bb60058 100644
> --- a/lib/kunit/test.c
> +++ b/lib/kunit/test.c
> @@ -24,7 +24,7 @@
> /*
> * Hook to fail the current test and print an error message to the log.
> */
> -void __kunit_fail_current_test_impl(const char *file, int line, const char *fmt, ...)
> +void __printf(3, 4) __kunit_fail_current_test_impl(const char *file, int line, const char *fmt, ...)
> {
> va_list args;
> int len;
> --
> 2.39.1.519.gcb327c4b5f-goog
>