• Alexander Lobakin's avatar
    gro: make net/gro.h self-contained · e75ec151
    Alexander Lobakin authored
    If some source file includes <net/gro.h>, but doesn't include
    <linux/indirect_call_wrapper.h>:
    
    In file included from net/8021q/vlan_core.c:7:
    ./include/net/gro.h:6:1: warning: data definition has no type or storage class
        6 | INDIRECT_CALLABLE_DECLARE(struct sk_buff *ipv6_gro_receive(struct list_head *,
          | ^~~~~~~~~~~~~~~~~~~~~~~~~
    ./include/net/gro.h:6:1: error: type defaults to ‘int’ in declaration of ‘INDIRECT_CALLABLE_DECLARE’ [-Werror=implicit-int]
    
    [...]
    
    Include <linux/indirect_call_wrapper.h> directly. It's small and
    won't pull lots of dependencies.
    Also add some incomplete struct declarations to be fully stacked.
    
    Fixes: 04f00ab2 ("net/core: move gro function declarations to separate header ")
    Signed-off-by: default avatarAlexander Lobakin <alobakin@pm.me>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    e75ec151
gro.h 568 Bytes