lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 22 Jan 2019 15:50:16 -0800
From:   Nick Desaulniers <ndesaulniers@...gle.com>
To:     Tri Vo <trong@...roid.com>
Cc:     Peter Oberparleiter <oberpar@...ux.ibm.com>,
        Greg Hackmann <ghackmann@...roid.com>,
        LKML <linux-kernel@...r.kernel.org>, kernel-team@...roid.com,
        Masahiro Yamada <yamada.masahiro@...ionext.com>
Subject: Re: [PATCH v3 3/3] gcov: docs: add a note on GCC vs Clang differences

On Tue, Jan 22, 2019 at 3:39 PM Tri Vo <trong@...roid.com> wrote:
>
> Document some things of note to gcov users:
> 1. GCC gcov and Clang llvm-cov tools are not compatible.
> 2. The use of GCC vs Clang is transparent at build-time.
>
> Signed-off-by: Tri Vo <trong@...roid.com>

Thanks for adding this note (I made the mistake myself when testing
out these patches that the coverage format is slightly different).
And good find removing the documentation on the now obsolete config.
Reviewed-by: Nick Desaulniers <ndesaulniers@...gle.com>

> ---
>  Documentation/dev-tools/gcov.rst | 18 ++++++++++++++----
>  1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/dev-tools/gcov.rst b/Documentation/dev-tools/gcov.rst
> index 69a7d90c320a..46aae52a41d0 100644
> --- a/Documentation/dev-tools/gcov.rst
> +++ b/Documentation/dev-tools/gcov.rst
> @@ -34,10 +34,6 @@ Configure the kernel with::
>          CONFIG_DEBUG_FS=y
>          CONFIG_GCOV_KERNEL=y
>
> -select the gcc's gcov format, default is autodetect based on gcc version::
> -
> -        CONFIG_GCOV_FORMAT_AUTODETECT=y
> -
>  and to get coverage data for the entire kernel::
>
>          CONFIG_GCOV_PROFILE_ALL=y
> @@ -169,6 +165,20 @@ b) gcov is run on the BUILD machine
>        [user@...ld] gcov -o /tmp/coverage/tmp/out/init main.c
>
>
> +Note on compilers
> +-----------------
> +
> +GCC and LLVM gcov tools are not necessarily compatible. Use gcov_ to work with
> +GCC-generated .gcno and .gcda files, and use llvm-cov_ for Clang.
> +
> +.. _gcov: http://gcc.gnu.org/onlinedocs/gcc/Gcov.html
> +.. _llvm-cov: https://llvm.org/docs/CommandGuide/llvm-cov.html
> +
> +Build differences between GCC and Clang gcov are handled by Kconfig. It
> +automatically selects the appropriate gcov format depending on the detected
> +toolchain.
> +
> +
>  Troubleshooting
>  ---------------
>
> --
> 2.20.1.321.g9e740568ce-goog
>


-- 
Thanks,
~Nick Desaulniers

Powered by blists - more mailing lists