Re: [PATCH] kbuild: clang: Support building UM with SUBARCH=i386

Thomas Weißschuh
2025-03-04T14:51:22Z

On 2025-03-04 11:25:36+0100, Nathan Chancellor wrote:
> On Mon, Mar 03, 2025 at 11:29:58PM +0100, Thomas Weißschuh wrote:
> > On 2025-03-03 13:52:41-0800, Kees Cook wrote:

<snip>

> > This is also what exists in tools/testing/selftests/lib.mk.
> > Minus the missing CONFIG_FORTIFY_SOURCE on clang x86_32
> > and a failure of overflow.DEFINE_FLEX_test (clang 19.1.7).
>
> Does Kees's other patch resolve the second issue? It'll obviously fix
> the first :P
>
> https://lore.kernel.org/20250303214929.work.499-kees@kernel.org/

No, it doesn't.

Running tests with:
$ .kunit/linux kunit.filter_glob=overflow.DEFINE_FLEX_test kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[15:48:30] =================== overflow (1 subtest) ===================
[15:48:30] # DEFINE_FLEX_test: EXPECTATION FAILED at lib/overflow_kunit.c:1200
[15:48:30] Expected __builtin_dynamic_object_size(two_but_zero, 0) == expected_raw_size, but
[15:48:30] __builtin_dynamic_object_size(two_but_zero, 0) == 12 (0xc)
[15:48:30] expected_raw_size == 8 (0x8)
[15:48:30] [FAILED] DEFINE_FLEX_test
[15:48:30] # module: overflow_kunit
[15:48:30] ==================== [FAILED] overflow =====================
[15:48:30] ============================================================
[15:48:30] Testing complete. Ran 1 tests: failed: 1
[15:48:31] Elapsed time: 43.985s total, 0.001s configuring, 43.818s building, 0.133s running

If I force CONFIG_CC_HAS_COUNTED_BY=n then the test succeeds.
Clang 19.1.7 from the Arch Linux repos.

<snip>