Re: [PATCH v2 0/2] Validating UAPI backwards compatibility

From: Nick Desaulniers
Date: Wed Mar 01 2023 - 12:50:50 EST


On Tue, Feb 28, 2023 at 11:54 PM John Moon <quic_johmoo@xxxxxxxxxxx> wrote:
>
> Currently, the script works with gcc. It generates output like this when
> a backwards-incompatible change is made to a UAPI header:
>
> !!! ABI differences detected in include/uapi/linux/acct.h (compared to
> file at HEAD^1) !!!
>
> [C] 'struct acct' changed:
> type size changed from 512 to 544 (in bits)
> 1 data member insertion:
> '__u32 new_val', at offset 512 (in bits) at acct.h:71:1
>
> 0/1 UAPI header file changes are backwards compatible
> UAPI header ABI check failed
>
> However, we have not had success with clang. It seems clang is more
> aggressive in optimizing dead code away (no matter which options we
> pass). Therefore, no ABI differences are found.

Hi John,
Do you have the list of bugs you've filed upstream against clang wrt.
information missing when using `-fno-eliminate-unused-debug-types`?

https://github.com/llvm/llvm-project/issues is the issue tracker.

Seeing a strong participant in both the Android and LLVM ecosystems
supply scripts that lack clang support...raises eyebrows.
--
Thanks,
~Nick Desaulniers