[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] coverage: update gcov info for newer versions of gcc


  • To: Alex Bennée <alex.bennee@xxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Mon, 11 Sep 2023 18:05:09 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=w9wOiOFi3vZgH5u4noA2ptE8EfHKbzucFXRyhHawdrk=; b=eIV0yq9p2kroYiSzCnEkWB0JjrMVG/Vcdl/7suT+hUIJ8GUS3cYP8tyg/5N47sx/NhUMOfeYyQGT6KWw8Yy/+3Y3hzR9E+qNb1i5eGQpR0j0Hfb/wn3DR4wnik5En64EjLg8cPh5YiX9lpEl2X80BXJbIPrlzN6to6AzroG6Rit7sKwFkLB2DMZBuigjRHnTxOC6mlH2KowQrv/FclGmYN7nt30kou5cCIjIQ9q382vegi46OJ2aqN3/BwjrOwUdIPGL3ng0Y8scq0mRj6i24WpXpWdYwvQblf0ZXthuCxFgntEbgiWJp508EZ68es7xTz8mEVJRGu+mLLN/tyWbJg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dzuh+4+bmN/+bhTACMuQK0AC43Nm3k6MErb3JBCgifXW6dfVV6sbv3xe8uAgdYrnwyVSyPZMbSis4HfTR32kosvjsubqdhOukRatZHiKtSFpERJV3I42pXB1LlAJ+AItrZ4B6iT1NwpYEeUkKj3KlUYbniJaPZlSswCZnLps7GCQF1VEMOCTsONaS7ExmW442cZErK5/0qTjGrJtCj8zUzLOvwxEhklQVVPO4bzgUm7hxbg/jB+2sdLTnOYsMWDxet8xA67ChTjVmbvyU9dmK2jBiofn4p1Pi42d5zEfdg2e1/HXRT4wqLFoZKO3u/k+5H4u+mWKUg1PprMlHtuRRQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Javi Merino <javi.merino@xxxxxxxxx>, Henry Wang <Henry.Wang@xxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 11 Sep 2023 16:05:22 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 11.09.2023 17:26, Alex Bennée wrote:
> Jan Beulich <jbeulich@xxxxxxxx> writes:
>> On 02.09.2023 17:11, Javi Merino wrote:
>>> --- a/xen/common/coverage/Makefile
>>> +++ b/xen/common/coverage/Makefile
>>> @@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \
>>>             gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
> 
> This isn't even supported, see below:
> 
>>>             gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>>             gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>> -           gcc_5.o, gcc_7.o))))
>>> +           gcc_5.o, $(call cc-ifversion,-lt,1000, \
>>> +           gcc_7.o,  $(call cc-ifversion,-lt,1200, \
>>> +           gcc_10.o, gcc_12.o))))))
>>
>> This is getting unwieldy, so I think we ought to try to limit the number
>> of different files we have. Already gcc_4_9.c and gcc_7.c specify the
>> same GCOV_COUNTERS and differ only in the version checks (which could be
>> combined). Therefore ...
> 
> You may want to consider your policy on supported GCC versions. I see
> you still support:
> 
>     * C compiler and linker:
>       - For x86:
>         - GCC 4.1.2_20070115 or later
>         - GNU Binutils 2.16.91.0.5 or later
>         or
>         - Clang/LLVM 3.5 or later
>       - For ARM 32-bit:
>         - GCC 4.9 or later
>         - GNU Binutils 2.24 or later
>       - For ARM 64-bit:
>         - GCC 5.1 or later
>         - GNU Binutils 2.24 or later
> 
> While also having some commented out warnings because the base GCC is so old:
> 
>   CFLAGS   += -Wmissing-prototypes
>   # (gcc 4.3x and later)   -Wconversion -Wno-sign-conversion
> 
> For reference QEMU's minimum GCC is 7.4
> 
>   if compiler.get_id() == 'gcc' and 
> compiler.version().version_compare('>=7.4')
> 
> and while our support cycle is based off distro LTS releases I have to
> wonder do you actually need to support users building the
> latest/greatest version of the hypervisor on ancient user-spaces with
> old compilers?
> 
> I think the oldest distro you have in your CI is jessie (still hanging
> on with extended LTS support) and that uses GCC 4.9.
> 
> I see there are various scripts to gather support status into the
> documentation but I couldn't find a general statement on the projects
> overall approach to supported versions of components.

That's the problem - we've been intending to raise the baseline for quite
some time, but figuring at least a rule of thumb by which to go both now
and in the future turns out problematic.

Jan



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.