• Arnd Bergmann's avatar
    qed: reduce maximum stack frame size · 7c116e02
    Arnd Bergmann authored
    clang warns about an overly large stack frame in one function
    when it decides to inline all __qed_get_vport_*() functions into
    __qed_get_vport_stats():
    
    drivers/net/ethernet/qlogic/qed/qed_l2.c:1889:13: error: stack frame size of 1128 bytes in function '_qed_get_vport_stats' [-Werror,-Wframe-larger-than=]
    
    Use a noinline_for_stack annotation to prevent clang from inlining
    these, which keeps the maximum stack usage at around half of that
    in the worst case, similar to what we get with gcc.
    
    Fixes: 86622ee7 ("qed: Move statistics to L2 code")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7c116e02
qed_l2.c 82.1 KB