Skip to content
  • Xie XiuQi's avatar
    trace/xdp: fix compile warning: 'struct bpf_map' declared inside parameter list · 2dc548c0
    Xie XiuQi authored
    
    [ Upstream commit 23721a75
    
     ]
    
    We meet this compile warning, which caused by missing bpf.h in xdp.h.
    
    In file included from ./include/trace/events/xdp.h:10:0,
                     from ./include/linux/bpf_trace.h:6,
                     from drivers/net/ethernet/intel/i40e/i40e_txrx.c:29:
    ./include/trace/events/xdp.h:93:17: warning: ‘struct bpf_map’ declared inside parameter list will not be visible outside of this definition or declaration
        const struct bpf_map *map, u32 map_index),
                     ^
    ./include/linux/tracepoint.h:187:34: note: in definition of macro ‘__DECLARE_TRACE’
      static inline void trace_##name(proto)    \
                                      ^~~~~
    ./include/linux/tracepoint.h:352:24: note: in expansion of macro ‘PARAMS’
      __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args),  \
                            ^~~~~~
    ./include/linux/tracepoint.h:477:2: note: in expansion of macro ‘DECLARE_TRACE’
      DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
      ^~~~~~~~~~~~~
    ./include/linux/tracepoint.h:477:22: note: in expansion of macro ‘PARAMS’
      DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
                          ^~~~~~
    ./include/trace/events/xdp.h:89:1: note: in expansion of macro ‘DEFINE_EVENT’
     DEFINE_EVENT(xdp_redirect_template, xdp_redirect,
     ^~~~~~~~~~~~
    ./include/trace/events/xdp.h:90:2: note: in expansion of macro ‘TP_PROTO’
      TP_PROTO(const struct net_device *dev,
      ^~~~~~~~
    ./include/trace/events/xdp.h:93:17: warning: ‘struct bpf_map’ declared inside parameter list will not be visible outside of this definition or declaration
        const struct bpf_map *map, u32 map_index),
                     ^
    ./include/linux/tracepoint.h:203:38: note: in definition of macro ‘__DECLARE_TRACE’
      register_trace_##name(void (*probe)(data_proto), void *data) \
                                          ^~~~~~~~~~
    ./include/linux/tracepoint.h:354:4: note: in expansion of macro ‘PARAMS’
        PARAMS(void *__data, proto),   \
        ^~~~~~
    
    Reported-by: default avatarHuang Daode <huangdaode@hisilicon.com>
    Cc: Hanjun Guo <guohanjun@huawei.com>
    Fixes: 8d3b778f
    
     ("xdp: tracepoint xdp_redirect also need a map argument")
    Signed-off-by: default avatarXie XiuQi <xiexiuqi@huawei.com>
    Acked-by: default avatarJesper Dangaard Brouer <brouer@redhat.com>
    Acked-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    2dc548c0