[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <fd532051-7b11-3a0a-0dd1-13e1820960db@roeck-us.net>
Date: Tue, 13 Dec 2022 06:11:47 -0800
From: Guenter Roeck <linux@...ck-us.net>
To: Vlastimil Babka <vbabka@...e.cz>,
"Sudip Mukherjee (Codethink)" <sudipm.mukherjee@...il.com>
Cc: Andrey Ryabinin <ryabinin.a.a@...il.com>,
Alexander Potapenko <glider@...gle.com>,
Andrey Konovalov <andreyknvl@...il.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Vincenzo Frascino <vincenzo.frascino@....com>,
Andrew Morton <akpm@...ux-foundation.org>,
kasan-dev@...glegroups.com, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, Linus Torvalds <torvalds@...ux-foundation.org>
Subject: Re: mainline build failure due to e240e53ae0ab ("mm, slub: add
CONFIG_SLUB_TINY")
On 12/13/22 05:27, Vlastimil Babka wrote:
> 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?
>
"depends on !COMPILE_TEST" should do it. Not sure though if that would just
hide the other compile failures seen with powerpc and arm allmodconfig
builds.
Guenter
Powered by blists - more mailing lists