lkml.org 
[lkml]   [2021]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Linux 5.16-rc1
Date
On 11/16/21 3:36 AM, Michael Ellerman wrote:
> Guenter Roeck <linux@roeck-us.net> writes:
>> On 11/14/21 9:21 PM, Linus Torvalds wrote:
>>> On Sun, Nov 14, 2021 at 8:56 PM Guenter Roeck <linux@roeck-us.net> wrote:
>>>>
>>>> With gcc 5.4, mips:mapta_defconfig
>>>> mips-linux-gcc.br_real: error: unrecognized command line option ‘-Wimplicit-fallthrough=5’
>>>
>>> This (and the gcc-6.x ones for sh4eb/sparc/xtensa) are already fixed
>>> in my tree. They're all "old gcc didn't support that flag" things with
>>> a trivial one-liner fix.
>>>
>>> I was hoping you didn't have older gcc versions, but you clearly do ;^p
>>>
>>
>> Top of tree is a bit better:
>>
>> Build results:
>> total: 153 pass: 141 fail: 12
>> Failed builds:
>> arm:allmodconfig
>> arm64:allmodconfig
>> csky:defconfig
>> csky:allmodconfig
>> mips:allmodconfig
>> parisc:allmodconfig
>> powerpc:allmodconfig
>> powerpc:ppc6xx_defconfig
>> riscv32:allmodconfig
>> riscv:allmodconfig
>> s390:allmodconfig
>> sparc64:allmodconfig
>> Qemu test results:
>> total: 482 pass: 476 fail: 6
>> Failed tests:
>> ppc64:mac99:ppc64_book3s_defconfig:smp:net,ne2k_pci:initrd
>> ppc64:mac99:ppc64_book3s_defconfig:smp:net,pcnet:ide:rootfs
>> ppc64:mac99:ppc64_book3s_defconfig:smp:net,e1000:sdhci:mmc:rootfs
>> ppc64:mac99:ppc64_book3s_defconfig:smp:net,e1000e:nvme:rootfs
>> ppc64:mac99:ppc64_book3s_defconfig:smp:net,virtio-net:scsi[DC395]:rootfs
>
>
> My qemu mac99 test is passing, but I guess your tests are enabling more
> devices or something to trigger that breakage?
>
>> powerpc:allmodconfig
>>
>> fs/ntfs/aops.c: In function 'ntfs_write_mst_block':
>> fs/ntfs/aops.c:1311:1: error: the frame size of 2240 bytes is larger than 2048 bytes
>>
>> Bisect points to commit f22969a6604 ("powerpc/64s: Default to 64K pages for
>> 64 bit book3s"), and reverting that commit does fix the problem.
>> The problem is
>> ntfs_inode *locked_nis[PAGE_SIZE / NTFS_BLOCK_SIZE];
>>
>> I don't see the problem in next-20211115, but I don't immediately see how it was fixed there.
>
> I still see it in next.
>
> I don't know what to do about it though. The NTFS folks presumably don't
> want to rewrite their code to avoid a warning on powerpc, we have no
> real interest in NTFS, and definitely no expertise in the NTFS code. We
> don't want to revert the 64K change, and even if we did the warning
> would still be there for other 64K page configs.
>
> I guess we need to bump CONFIG_FRAME_WARN a bit when 64K pages is
> enabled? But even that is a bit gross because the stack size doesn't
> increase based on the page size.
>

It does for ntfs, actually. locked_nis is allocated on the stack. With a
page size of 64k, the array has 128 entries. Since it is a pointer, that
alone makes it 1k. If you don't care about NTFS support, best I could
suggest would be to make ntfs dependent on something like
!PPC_PAGE_SHIFT || PPC_PAGE_SHIFT < 16
ppc supports 256k page size as well, so that code is always vulnerable to
stack size overflows, and presumably you don't want to set the frame size
limit to 6k in that case.

>> powerpc:ppc6xx_defconfig
>>
>> arch/powerpc/platforms/83xx/mcu_mpc8349emitx.c: In function 'mcu_remove':
>> arch/powerpc/platforms/83xx/mcu_mpc8349emitx.c:189:13: error: unused variable 'ret'
>>
>> Caused by commit 5d354dc35ebb ("powerpc/83xx/mpc8349emitx: Make mcu_gpiochip_remove()
>> return void"). Still seen in -next.
>
> I have a fix queued for that, will hit -next tomorrow.
>
>> powerpc:qemu_ppc64_book3s_defconfig:
>>
>> arch/powerpc/mm/slice.c: In function ‘slice_get_unmapped_area’:
>> arch/powerpc/mm/slice.c:639:1: error: the frame size of 1056 bytes is larger than 1024 bytes
>>
>> Bisect again points to commit f22969a6604 ("powerpc/64s: Default to 64K pages
>> for 64 bit book3s"), and reverting that commit does fix the problem.
>
> I'm not sure what qemu_ppc64_book3s_defconfig is, it's not an upstream
> defconfig, and I couldn't quite see how it's generated in your scripts.
>
> But if it's a 64-bit config it should be using 2048 bytes, from
> lib/Kconfig.debug:
>
> config FRAME_WARN
> int "Warn for stack frames larger than"
> range 0 8192
> default 2048 if GCC_PLUGIN_LATENT_ENTROPY
> default 1536 if (!64BIT && (PARISC || XTENSA))
> default 1024 if (!64BIT && !PARISC)
> default 2048 if 64BIT
>

Ah, my fault there. It is a fixed configuration. I need to update that.
Sorry for the noise.

Guenter

\
 
 \ /
  Last update: 2021-11-16 15:52    [W:0.095 / U:6.736 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site