Re: randconfig fixes for 5.10.y

From: Arnd Bergmann
Date: Wed May 31 2023 - 06:13:06 EST


On Tue, May 30, 2023, at 21:20, Arnd Bergmann wrote:
> On Tue, May 30, 2023, at 21:02, Arnd Bergmann wrote:
>>
>> CONFIG_COMPILE_TEST=y forces a number of options to be
>> hidden from build tests, which is generally super useful.
>> The one that ended up hiding the stack growth above is
>> CONFIG_GCOV_PROFILE_ALL. I'll try enabling it for a few
>> builds to see what else shows up with it.
>
> Update: you already pointed to UBSAN_SANITIZE_ALL causing
> this, I can confirm that this is also the case. With your
> config, the combination of CONFIG_GCOV_PROFILE_ALL and
> CONFIG_UBSAN_SANITIZE_ALL causes the compiler to completely
> mess up register allocation in this code, disabling either
> of the two gets it below the boundary.

After a night of randconfig builds with both UBSAN_SANITIZE_ALL
and GCOV_PROFILE_ALL force-enabled, these are the ones I found,
listing only the worst size for each function (using gcc-13.1).
None of these show up without GCOV though:

crypto/twofish_common.c:683:1: error: the frame size of 2040 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
crypto/twofish_common.c:683:1: error: the frame size of 2336 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c:1589:1: error: the frame size of 1696 bytes is larger than 1400 bytes [-Werror=frame-larger-than=]
drivers/media/platform/verisilicon/hantro_g2_vp9_dec.c:754:1: error: the frame size of 1260 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
drivers/staging/media/ipu3/ipu3-css-params.c:1206:1: error: the frame size of 1080 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
drivers/staging/media/rkvdec/rkvdec-vp9.c:1042:1: error: the frame size of 1660 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
drivers/staging/media/rkvdec/rkvdec-vp9.c:1042:1: error: the frame size of 2176 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
drivers/staging/media/rkvdec/rkvdec-vp9.c:995:1: error: the frame size of 1656 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]

Arnd