The __printf() macro is used in many tools in the linux kernel to validate the format specifiers in functions that use printf. Some selftests use it without putting it in a macro definition and some tests import the kselftests.h header. Use __printf() attribute instead of the full attribute since the macro is inside kselftests.h and the header is already imported. Signed-off-by: Wieczor-Retman, Maciej <maciej.wieczor-retman@xxxxxxxxx> --- tools/testing/selftests/kvm/include/test_util.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/kvm/include/test_util.h b/tools/testing/selftests/kvm/include/test_util.h index a6e9f215ce70..710a8a78e8ce 100644 --- a/tools/testing/selftests/kvm/include/test_util.h +++ b/tools/testing/selftests/kvm/include/test_util.h @@ -33,7 +33,7 @@ static inline int _no_printf(const char *format, ...) { return 0; } #define pr_info(...) _no_printf(__VA_ARGS__) #endif -void print_skip(const char *fmt, ...) __attribute__((format(printf, 1, 2))); +void __printf(1, 2) print_skip(const char *fmt, ...); #define __TEST_REQUIRE(f, fmt, ...) \ do { \ if (!(f)) \ -- 2.42.0