Hi Wei,

Thank you for the patch! Yet something to improve:

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

url:    
https://github.com/0day-ci/linux/commits/Wei-Wang/ipv6-avoid-taking-refcnt-on-dst-during-route-lookup/20190621-195237
config: x86_64-randconfig-u0-06220153 (attached as .config)
compiler: gcc-5 (Debian 5.5.0-3) 5.4.1 20171010
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

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 drivers/net//ethernet/broadcom/cnic.c:41:0:
   include/net/ip6_route.h: In function 'ip6_route_output_flags':
>> include/net/ip6_route.h:103:13: error: 'struct net' has no member named 
>> 'ipv6'
      dst = &net->ipv6.ip6_null_entry->dst;
                ^

vim +103 include/net/ip6_route.h

    80  
    81  void ip6_route_input(struct sk_buff *skb);
    82  struct dst_entry *ip6_route_input_lookup(struct net *net,
    83                                           struct net_device *dev,
    84                                           struct flowi6 *fl6,
    85                                           const struct sk_buff *skb, int 
flags);
    86  
    87  struct dst_entry *ip6_route_output_flags_noref(struct net *net,
    88                                                 const struct sock *sk,
    89                                                 struct flowi6 *fl6, int 
flags);
    90  
    91  static inline struct dst_entry *ip6_route_output_flags(struct net *net,
    92                                                         const struct 
sock *sk,
    93                                                         struct flowi6 
*fl6,
    94                                                         int flags) {
    95          struct dst_entry *dst;
    96          struct rt6_info *rt6;
    97  
    98          rcu_read_lock();
    99          dst = ip6_route_output_flags_noref(net, sk, fl6, flags);
   100          rt6 = (struct rt6_info *)dst;
   101          /* For dst cached in uncached_list, refcnt is already taken. */
   102          if (list_empty(&rt6->rt6i_uncached) && !dst_hold_safe(dst)) {
 > 103                  dst = &net->ipv6.ip6_null_entry->dst;
   104                  dst_hold(dst);
   105          }
   106          rcu_read_unlock();
   107  
   108          return dst;
   109  }
   110  

---
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