Hi Yi-Hung,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on net-next/master]

url:    
https://github.com/0day-ci/linux/commits/Yi-Hung-Wei/netfilter-Export-nf_ct_destroy_timeout/20190323-094843
reproduce:
        # apt-get install sparse
        make ARCH=x86_64 allmodconfig
        make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'


sparse warnings: (new ones prefixed by >>)

   net//netfilter/nf_conntrack_timeout.c:38:62: sparse: incompatible types in 
comparison expression (different base types)
>> net//netfilter/nf_conntrack_timeout.c:58:23: sparse: incompatible types in 
>> comparison expression (different address spaces)

vim +58 net//netfilter/nf_conntrack_timeout.c

    33  
    34  static int untimeout(struct nf_conn *ct, void *timeout)
    35  {
    36          struct nf_conn_timeout *timeout_ext = nf_ct_timeout_find(ct);
    37  
  > 38          if (timeout_ext && (!timeout || timeout_ext->timeout == 
timeout))
    39                  RCU_INIT_POINTER(timeout_ext->timeout, NULL);
    40  
    41          /* We are not intended to delete this conntrack. */
    42          return 0;
    43  }
    44  
    45  void nf_ct_untimeout(struct net *net, struct nf_ct_timeout *timeout)
    46  {
    47          nf_ct_iterate_cleanup_net(net, untimeout, timeout, 0, 0);
    48  }
    49  EXPORT_SYMBOL_GPL(nf_ct_untimeout);
    50  
    51  void nf_ct_destroy_timeout(struct nf_conn *ct)
    52  {
    53  #ifdef CONFIG_NF_CONNTRACK_TIMEOUT
    54          struct nf_conn_timeout *timeout_ext;
    55          typeof(nf_ct_timeout_put_hook) timeout_put;
    56  
    57          rcu_read_lock();
  > 58          timeout_put = rcu_dereference(nf_ct_timeout_put_hook);
    59  
    60          if (timeout_put) {
    61                  timeout_ext = nf_ct_timeout_find(ct);
    62                  if (timeout_ext) {
    63                          timeout_put(timeout_ext->timeout);
    64                          RCU_INIT_POINTER(timeout_ext->timeout, NULL);
    65                  }
    66          }
    67          rcu_read_unlock();
    68  #endif
    69  }
    70  EXPORT_SYMBOL_GPL(nf_ct_destroy_timeout);
    71  

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

Reply via email to