Hi Pablo,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[cannot apply to v5.2 next-20190719]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/Pablo-Neira-Ayuso/net-flow_offload-remove-netns-parameter-from-flow_block_cb_alloc/20190713-154531
config: arm64-allmodconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.4.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.4.0 make.cross ARCH=arm64 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <l...@intel.com>

All errors (new ones prefixed by >>):

   In file included from include/net/netfilter/nf_tables_offload.h:4:0,
                    from <command-line>:0:
   include/net/flow_offload.h: In function 'flow_block_cb_add':
   include/net/flow_offload.h:292:2: error: implicit declaration of function 
'list_add_tail' [-Werror=implicit-function-declaration]
     list_add_tail(&block_cb->list, &offload->cb_list);
     ^~~~~~~~~~~~~
   include/net/flow_offload.h: In function 'flow_block_cb_remove':
>> include/net/flow_offload.h:298:2: error: implicit declaration of function 
>> 'list_move' [-Werror=implicit-function-declaration]
     list_move(&block_cb->list, &offload->cb_list);
     ^~~~~~~~~
   In file included from include/net/netfilter/nf_tables.h:5:0,
                    from include/net/netfilter/nf_tables_offload.h:5,
                    from <command-line>:0:
   include/linux/list.h: At top level:
   include/linux/list.h:91:20: warning: conflicting types for 'list_add_tail'
    static inline void list_add_tail(struct list_head *new, struct list_head 
*head)
                       ^~~~~~~~~~~~~
   include/linux/list.h:91:20: error: static declaration of 'list_add_tail' 
follows non-static declaration
   In file included from include/net/netfilter/nf_tables_offload.h:4:0,
                    from <command-line>:0:
   include/net/flow_offload.h:292:2: note: previous implicit declaration of 
'list_add_tail' was here
     list_add_tail(&block_cb->list, &offload->cb_list);
     ^~~~~~~~~~~~~
   In file included from include/net/netfilter/nf_tables.h:5:0,
                    from include/net/netfilter/nf_tables_offload.h:5,
                    from <command-line>:0:
   include/linux/list.h:199:20: warning: conflicting types for 'list_move'
    static inline void list_move(struct list_head *list, struct list_head *head)
                       ^~~~~~~~~
   include/linux/list.h:199:20: error: static declaration of 'list_move' 
follows non-static declaration
   In file included from include/net/netfilter/nf_tables_offload.h:4:0,
                    from <command-line>:0:
   include/net/flow_offload.h:298:2: note: previous implicit declaration of 
'list_move' was here
     list_move(&block_cb->list, &offload->cb_list);
     ^~~~~~~~~
   cc1: some warnings being treated as errors

vim +/list_move +298 include/net/flow_offload.h

67bd0d5ea7974d9 Pablo Neira Ayuso 2019-07-09  288  
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  289  static inline void 
flow_block_cb_add(struct flow_block_cb *block_cb,
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  290                               
     struct flow_block_offload *offload)
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  291  {
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09 @292       
list_add_tail(&block_cb->list, &offload->cb_list);
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  293  }
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  294  
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  295  static inline void 
flow_block_cb_remove(struct flow_block_cb *block_cb,
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  296                               
        struct flow_block_offload *offload)
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  297  {
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09 @298       
list_move(&block_cb->list, &offload->cb_list);
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  299  }
da3eeb904ff432e Pablo Neira Ayuso 2019-07-09  300  
c66afb86838ad15 Pablo Neira Ayuso 2019-07-11  301  bool 
flow_block_cb_is_busy(flow_setup_cb_t *cb, void *cb_ident,
0d4fd02e7199fbf Pablo Neira Ayuso 2019-07-09  302                          
struct list_head *driver_block_list);
0d4fd02e7199fbf Pablo Neira Ayuso 2019-07-09  303  
4e95bc268b915c3 Pablo Neira Ayuso 2019-07-09  304  int 
flow_block_cb_setup_simple(struct flow_block_offload *f,
c66afb86838ad15 Pablo Neira Ayuso 2019-07-11  305                              
struct list_head *driver_list,
c66afb86838ad15 Pablo Neira Ayuso 2019-07-11  306                              
flow_setup_cb_t *cb,
4e95bc268b915c3 Pablo Neira Ayuso 2019-07-09  307                              
void *cb_ident, void *cb_priv, bool ingress_only);
4e95bc268b915c3 Pablo Neira Ayuso 2019-07-09  308  
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  309  enum flow_cls_command {
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  310       FLOW_CLS_REPLACE,
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  311       FLOW_CLS_DESTROY,
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  312       FLOW_CLS_STATS,
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  313       FLOW_CLS_TMPLT_CREATE,
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  314       FLOW_CLS_TMPLT_DESTROY,
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  315  };
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  316  
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  317  struct 
flow_cls_common_offload {
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  318       u32 chain_index;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  319       __be16 protocol;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  320       u32 prio;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  321       struct netlink_ext_ack 
*extack;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  322  };
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  323  
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  324  struct flow_cls_offload {
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  325       struct 
flow_cls_common_offload common;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  326       enum flow_cls_command 
command;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  327       unsigned long cookie;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  328       struct flow_rule *rule;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  329       struct flow_stats stats;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  330       u32 classid;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  331  };
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  332  
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  333  static inline struct 
flow_rule *
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  334  
flow_cls_offload_flow_rule(struct flow_cls_offload *flow_cmd)
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  335  {
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  336       return flow_cmd->rule;
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  337  }
f9e30088d20016a Pablo Neira Ayuso 2019-07-09  338  
8f2566225ae2d62 Pablo Neira Ayuso 2019-02-02  339  #endif /* 
_NET_FLOW_OFFLOAD_H */

:::::: The code at line 298 was first introduced by commit
:::::: da3eeb904ff432ec22cf7b4db17a47647428873a net: flow_offload: add list 
handling functions

:::::: TO: Pablo Neira Ayuso <pa...@netfilter.org>
:::::: CC: David S. Miller <da...@davemloft.net>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to