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: Rong Chen
Date: Tue Nov 24 2020 - 19:36:24 EST




On 11/24/20 7:51 PM, Andrey Konovalov wrote:
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!

Ah.. my fault, will disable CONFIG_KASAN_STACK_ENABLE for this case.

Best Regards,
Rong Chen