bridge: multicast: work around clang bug
authorArnd Bergmann <arnd@arndb.de>
Wed, 27 May 2020 13:51:13 +0000 (15:51 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 27 May 2020 18:34:48 +0000 (11:34 -0700)
commitb3b6a84c6a920c60fd1393c43818b3955441424b
tree1432d966e59de847d6fbdf59222e983e8684be2d
parent7e0afbdfd13d1e708fe96e31c46c4897101a6a43
bridge: multicast: work around clang bug

Clang-10 and clang-11 run into a corner case of the register
allocator on 32-bit ARM, leading to excessive stack usage from
register spilling:

net/bridge/br_multicast.c:2422:6: error: stack frame size of 1472 bytes in function 'br_multicast_get_stats' [-Werror,-Wframe-larger-than=]

Work around this by marking one of the internal functions as
noinline_for_stack.

Link: https://bugs.llvm.org/show_bug.cgi?id=45802#c9
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_multicast.c