On 12/13/22 14:11, Guenter Roeck wrote: > On Tue, Dec 13, 2022 at 10:26:20AM +0000, Sudip Mukherjee (Codethink) wrote: >> Hi All, >> >> The latest mainline kernel branch fails to build xtensa allmodconfig >> with gcc-11 with the error: >> >> kernel/kcsan/kcsan_test.c: In function '__report_matches': >> kernel/kcsan/kcsan_test.c:257:1: error: the frame size of 1680 bytes is larger than 1536 bytes [-Werror=frame-larger-than=] >> 257 | } >> | ^ >> >> git bisect pointed to e240e53ae0ab ("mm, slub: add CONFIG_SLUB_TINY") >> > > In part that is because above commit changes Kconfig dependencies such > that xtensa:allmodconfig actually tries to build kernel/kcsan/kcsan_test.o. > In v6.1, CONFIG_KCSAN_KUNIT_TEST is not enabled for xtensa:allmodconfig. OK, so IIUC - e240e53ae0ab introduces SLUB_TINY and adds !SLUB_TINY to KASAN's depend - allyesconfig/allmodconfig will enable SLUB_TINY - thus KASAN is disabled where it was previously enabled - thus KCSAN which depends on !KASAN is enabled where it was previously disabled - also arch/xtensa/Kconfig: select ARCH_HAS_STRNCPY_FROM_USER if !KASAN > Downside of the way SLUB_TINY is defined is that it is enabled for all > allmodconfig / allyesconfig builds, which then disables building a lot > of the more sophisticated memory allocation options. It does disable KASAN, but seems that on the other hand allows enabling other stuff. Is there a way to exclude the SLUB_TINY option from all(mod/yes)config? Or it needs to be removed to SLUB_FULL and logically reversed? > Guenter