• Arnd Bergmann's avatar
    airo: work around stack usage warning · 7909a590
    Arnd Bergmann authored
    gcc-11 with KASAN on 32-bit arm produces a warning about a function
    that needs a lot of stack space:
    
    drivers/net/wireless/cisco/airo.c: In function 'setup_card.constprop':
    drivers/net/wireless/cisco/airo.c:3960:1: error: the frame size of 1512 bytes is larger than 1400 bytes [-Werror=frame-larger-than=]
    
    Most of this is from a single large structure that could be dynamically
    allocated or moved into the per-device structure.  However, as the callers
    all seem to have a fairly well bounded call chain, the easiest change
    is to pull out the part of the function that needs the large variables
    into a separate function and mark that as noinline_for_stack. This does
    not reduce the total stack usage, but it gets rid of the warning and
    requires minimal changes otherwise.
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210323131634.2669455-1-arnd@kernel.org
    7909a590
airo.c 218 KB