OSDN Git Service

gro: make net/gro.h self-contained
authorAlexander Lobakin <alobakin@pm.me>
Thu, 18 Mar 2021 18:42:23 +0000 (18:42 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 19 Mar 2021 02:51:12 +0000 (19:51 -0700)
commite75ec151c1088c1aa7a49ff16a2adcaddb24a861
treeed081cf751d7d18b656df38ff97d2c46e590a8cc
parent1816bf1f53cbc3b92f61a03eb4ad8f07637e6438
gro: make net/gro.h self-contained

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: 04f00ab2275f ("net/core: move gro function declarations to separate header ")
Signed-off-by: Alexander Lobakin <alobakin@pm.me>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/gro.h