On 12/07/2024 5:44 pm, Anthony PERARD wrote:
> On Fri, Jul 12, 2024 at 11:49:07AM +0100, Andrew Cooper wrote:
>> The containers are exactly as per 20.04 (Focal). However, this now brings us
>> to 5 releases * 4 build jobs worth of Ubuntu testing, which is overkill.
>>
>> The oldest and newest toolchains are the most likely to find problems with new
>> code, so reduce the middle 3 releases (18/20/22) to just a single smoke test
>> each.
> That would mean a bit less `clang` build-test, but I guess that would be
> mostly covered by FreeBSD testing on GitHub.
>
> I tried to find out which version of clang were been used with this
> patch applied:
> Alpine clang version 16.0.6
> Debian clang version 14.0.6
> clang version 17.0.6
> clang version 18.1.8
> clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)
> Ubuntu clang version 18.1.3 (1ubuntu1)
> and the versions that won't be tested anymore:
> clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
> clang version 10.0.0-4ubuntu1
> Ubuntu clang version 14.0.0-1ubuntu1.1
>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Anyway:
> Reviewed-by: Anthony PERARD <anthony.perard@vates.tech>
Thanks.
We could intermix Clang/GCC if we really want, but tbh (still!) the only
thing you want to use Clang for is stricter/better diagnostics. GCC is
still a better optimising compiler for C, particularly for kernel
activities.
Also, those clang versions are entirely obsolete. If we wanted to do
sensible testing, we'd need to be using the nightly builds and keeping
within ~18mo of the release which I think is their support window.
Also also, this testing is CC=Clang, LD=ld, which is subtly different to
the FreeBSD testing which is full-stack LLVM (so LD=lld).
There is definitely room for improvement in our Clang/LLVM testing.
~Andrew