Re: [kbuild-all] Re: drivers/net/wan/slic_ds26522.c:205:12: warning: stack frame size of 12288 bytes in function 'slic_ds26522_probe'

From: Andrey Konovalov
Date: Tue Nov 24 2020 - 06:52:31 EST


On Tue, Nov 24, 2020 at 9:02 AM Rong Chen <rong.a.chen@xxxxxxxxx> wrote:
>
> On 11/23/20 10:15 PM, Andrey Konovalov wrote:
> > On Thu, Nov 19, 2020 at 11:16 PM kernel test robot <lkp@xxxxxxxxx> wrote:
> >> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> >> head: 3494d58865ad4a47611dbb427b214cc5227fa5eb
> >> commit: cae9dc35ed9ff82a99754e51d57ff6c332e1f7e4 kasan: allow enabling stack tagging for tag-based mode
> >> date: 3 months ago
> >> config: arm64-randconfig-r002-20201119 (attached as .config)
> >> compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b2613fb2f0f53691dd0211895afbb9413457fca7)
> >> reproduce (this is a W=1 build):
> >> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> >> chmod +x ~/bin/make.cross
> >> # install arm64 cross compiling tool for clang build
> >> # apt-get install binutils-aarch64-linux-gnu
> >> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cae9dc35ed9ff82a99754e51d57ff6c332e1f7e4
> >> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> >> git fetch --no-tags linus master
> >> git checkout cae9dc35ed9ff82a99754e51d57ff6c332e1f7e4
> >> # save the attached .config to linux build tree
> >> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
> >>
> >> If you fix the issue, kindly add following tag as appropriate
> >> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> >>
> >> All warnings (new ones prefixed by >>):
> >>
> >>>> drivers/net/wan/slic_ds26522.c:205:12: warning: stack frame size of 12288 bytes in function 'slic_ds26522_probe' [-Wframe-larger-than=]
> >> static int slic_ds26522_probe(struct spi_device *spi)
> >> ^
> >> 1 warning generated.
> >> --
> >>>> drivers/gpu/drm/panel/panel-sitronix-st7789v.c:194:12: warning: stack frame size of 18352 bytes in function 'st7789v_prepare' [-Wframe-larger-than=]
> >> static int st7789v_prepare(struct drm_panel *panel)
> >> ^
> >> 1 warning generated.
> > Same issue as reported previously. Copying my response from the other
> > email just in case:
> >
> > This is the same issue in LLVM that was reported by Arnd for generic
> > KASAN (also see KASAN_STACK_ENABLE option description). By default
> > KASAN shouldn't have stack instrumentation enabled unless
> > KASAN_STACK_ENABLE is specified. Perhaps it makes sense to disable it
> > for KASAN_SW_TAGS config on the kernel test robot.
> >
> > [1] https://bugs.llvm.org/show_bug.cgi?id=38809
>
> Hi Andrey,
>
> Thanks for the explanation, we'll disable CONFIG_KASAN_SW_TAGS.

Hi Rong,

No, no, if you have a CONFIG_KASAN_SW_TAGS-based config - keep it
enabled, just disable CONFIG_KASAN_STACK_ENABLE to avoid these stack
overflows.

Thanks!