From: Andrey Konovalov <andreyknvl@xxxxxxxxx> This file produces large amounts of flaky coverage not useful for the KCOV's intended use case (guiding the fuzzing process). Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxx> --- I noticed this while running one of the syzkaller's programs. In one run of the program, the number of KCOV entries amounts to ~300k, with the top ones: 117285 /home/user/src/lib/find_bit.c:137 (discriminator 10) 116752 /home/user/src/lib/find_bit.c:137 (discriminator 3) 2455 /home/user/src/lib/vsprintf.c:2559 2033 /home/user/src/fs/kernfs/dir.c:317 1662 /home/user/src/fs/kernfs/kernfs-internal.h:72 ... In another run (that triggers exactly the same behavior in the kernel), the amount of entries drops to ~110k: 7141 /home/user/src/lib/find_bit.c:137 (discriminator 10) 7110 /home/user/src/lib/find_bit.c:137 (discriminator 3) 2455 /home/user/src/lib/vsprintf.c:2559 2033 /home/user/src/fs/kernfs/dir.c:317 1662 /home/user/src/fs/kernfs/kernfs-internal.h:72 ... With this patch applied, the amount of KCOV entries for the same program remains somewhat stable at ~100k. --- lib/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/Makefile b/lib/Makefile index 322bb127b4dc..0fde1c360f32 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -14,6 +14,7 @@ KCOV_INSTRUMENT_list_debug.o := n KCOV_INSTRUMENT_debugobjects.o := n KCOV_INSTRUMENT_dynamic_debug.o := n KCOV_INSTRUMENT_fault-inject.o := n +KCOV_INSTRUMENT_find_bit.o := n # string.o implements standard library functions like memset/memcpy etc. # Use -ffreestanding to ensure that the compiler does not try to "optimize" -- 2.25.1