[PATCH -rc 0/4] Protect from GCC garbage input in GCOV

From: Leon Romanovsky
Date: Wed Sep 02 2020 - 04:55:22 EST


From: Leon Romanovsky <leonro@xxxxxxxxxx>

Hi Linus,

Both Colin in Ubuntu [1] and I in FC 32 are having same kernel crashes
while GCOV is enabled. The reason to it that n_fuction variable that
should be provided by GCC is not initialized (or wrongly set).

This patch is based on the RFC [2] which I sent to gather feedback, but
didn't get any response, so sending it to you in proper -rc format.

Bottom line, GCOV is broken on GCC 10.2.

Thanks

[1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1891288
[2] https://lore.kernel.org/lkml/20200827133932.3338519-1-leon@xxxxxxxxxx

Leon Romanovsky (4):
gcov: Open-code kmemdup() to work correctly with kernel and user space
pointers
gcov: Use proper duplication routine for const pointer
gcov: Protect from uninitialized number of functions provided by GCC
10.2
gcov: Don't print out-of-memory print for all failed files

kernel/gcov/fs.c | 5 +++--
kernel/gcov/gcc_4_7.c | 17 +++++++++--------
2 files changed, 12 insertions(+), 10 deletions(-)

--
2.26.2