lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 31 May 2023 09:37:26 -0700
From:   Nick Desaulniers <ndesaulniers@...gle.com>
To:     Arnd Bergmann <arnd@...db.de>
Cc:     Dan Carpenter <dan.carpenter@...aro.org>, stable@...r.kernel.org,
        "laurent.pinchart" <laurent.pinchart@...asonboard.com>,
        Hans Verkuil <hverkuil-cisco@...all.nl>,
        Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
        Randy Dunlap <rdunlap@...radead.org>,
        linux-kernel@...r.kernel.org
Subject: Re: randconfig fixes for 5.10.y

On Wed, May 31, 2023 at 3:12 AM Arnd Bergmann <arnd@...db.de> wrote:
>
> 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).

In LLVM, a recent change we made was when the sanitizers are enabled,
the GCOV instrumentation is not checked by the sanitizers as that
results in excessive code growth.
https://reviews.llvm.org/D150460

> 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



-- 
Thanks,
~Nick Desaulniers

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ