Re: [PATCH] gcov: support GCC 12.1 and newer compilers

From: Martin Liška
Date: Mon Oct 17 2022 - 04:03:06 EST


On 10/17/22 02:40, Andrew Morton wrote:
> On Fri, 14 Oct 2022 11:30:51 +0200 Peter Oberparleiter <oberpar@xxxxxxxxxxxxx> wrote:
>
>> On 13.10.2022 09:40, Martin Liška wrote:
>>> Starting with GCC 12.1, there are 2 significant changes to the .gcda
>>> file format that needs to be supported:
>>>
>>> a) [gcov: Use system IO buffering] (23eb66d1d46a34cb28c4acbdf8a1deb80a7c5a05) changed
>>> that all sizes in the format are in bytes and not in words (4B)
>>> b) [gcov: make profile merging smarter] (72e0c742bd01f8e7e6dcca64042b9ad7e75979de)
>>> add a new checksum to the file header.
>>>
>>> Tested with GCC 7.5, 10.4, 12.2 and the current master.
>>>
>>> Signed-off-by: Martin Liska <mliska@xxxxxxx>
>>
>> Looks good, thanks! I successfully tested this patch on s390 using GCC
>> 12.2 and 11.2.
>>
>> Tested-by: Peter Oberparleiter <oberpar@xxxxxxxxxxxxx>
>> Reviewed-by: Peter Oberparleiter <oberpar@xxxxxxxxxxxxx>
>>
>> Andrew, could you add this patch via your tree?
>
> Sure.
>
> The changelog doesn't tell us what the user-visible effects of this are
> (please, it should do so), but it sounds to me like those effects are
> "gcov is utterly busted".

Hi.

Sorry for the missing user-visible effect. You are correct, the created .gcda
format can't be read by gcov tool since GCC 12.1 release.

Thanks,
Martin

>
> So I'll add a cc:stable to this, so that people can use new gcc
> versions to build older kernels.