[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <92c20b62-c4a7-8e63-4a94-76bdf6d9481e@kernel.org>
Date: Tue, 7 Sep 2021 16:35:26 -0700
From: Nathan Chancellor <nathan@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Naresh Kamboju <naresh.kamboju@...aro.org>,
Mathias Nyman <mathias.nyman@...el.com>,
Johannes Berg <johannes@...solutions.net>,
Jakub Kicinski <kuba@...nel.org>,
Shuah Khan <skhan@...uxfoundation.org>,
Brendan Higgins <brendanhiggins@...gle.com>,
Ariel Elior <aelior@...vell.com>,
GR-everest-linux-l2@...vell.com, Wei Liu <wei.liu@...nel.org>
Cc: Linux ARM <linux-arm-kernel@...ts.infradead.org>,
open list <linux-kernel@...r.kernel.org>,
Netdev <netdev@...r.kernel.org>, lkft-triage@...ts.linaro.org,
Arnd Bergmann <arnd@...db.de>,
"David S. Miller" <davem@...emloft.net>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Daniel Borkmann <daniel@...earbox.net>,
Alexei Starovoitov <ast@...nel.org>,
Eric Dumazet <edumazet@...gle.com>
Subject: Re: ipv4/tcp.c:4234:1: error: the frame size of 1152 bytes is larger
than 1024 bytes [-Werror=frame-larger-than=]
On 9/7/2021 4:14 PM, Linus Torvalds wrote:
> There are many more of these cases. I've seen Hyper-V allocate 'struct
> cpumask' on the stack, which is once again an absolute no-no that
> people have apparently just ignored the warning for. When you have
> NR_CPUS being the maximum of 8k, those bits add up, and a single
> cpumask is 1kB in size. Which is why you should never do that on
> stack, and instead use '
>
> cpumask_var_t mask;
> alloc_cpumask_var(&mask,..)
>
> which will do a much more reasonable job. But the reason I call out
> hyperv is that as far as I know, hyperv itself doesn't actually
> support 8192 CPU's. So all that apic noise with 'struct cpumask' that
> uses 1kB of data when NR_CPUS is set to 8192 is just wasted. Maybe I'm
> wrong. Adding hyperv people to the cc too.
I am only commenting on this because I was looking into an instance of
this warning yesterday with Fedora's arm64 config, which has
CONFIG_NR_CPUS=4096:
https://lore.kernel.org/r/YTZyMx91zV9kfDkQ@Ryzen-9-3900X.localdomain/
Won't your example only fix the issue with CONFIG_CPUMASK_OFFSTACK=y or
am I misreading the gigantic comment in include/linux/cpumask.h? As far
as I can tell, only x86 selects it and it is not user configurable
unless CONFIG_DEBUG_PER_CPU_MAPS is set, which is buried in the debug
options so most people won't bother trying to enable it. If I understand
correctly, how should these be dealt with in the case of
CONFIG_CPUMASK_OFFSTACK=n?
Cheers,
Nathan
Powered by blists - more mailing lists