Hi Yi, Thank you for the patch! Yet something to improve: [auto build test ERROR on linus/master] [cannot apply to v5.3-rc6 next-20190829] [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/Yi-Wang/ipv6-Not-to-probe-neighbourless-routes/20190830-025439 config: x86_64-rhel (attached as .config) compiler: gcc-7 (Debian 7.4.0-11) 7.4.0 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 All errors (new ones prefixed by >>): net/ipv6/route.c: In function 'rt6_probe': >> net/ipv6/route.c:660:10: error: 'struct fib6_nh' has no member named 'last_probe' fib6_nh->last_probe = jiffies; ^~ vim +660 net/ipv6/route.c c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 619 cc3a86c802f0ba David Ahern 2019-04-09 620 static void rt6_probe(struct fib6_nh *fib6_nh) 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 621 { f547fac624be53 Sabrina Dubroca 2018-10-12 622 struct __rt6_probe_work *work = NULL; 5e670d844b2a4e David Ahern 2018-04-17 623 const struct in6_addr *nh_gw; f2c31e32b378a6 Eric Dumazet 2011-07-29 624 struct neighbour *neigh; 5e670d844b2a4e David Ahern 2018-04-17 625 struct net_device *dev; f547fac624be53 Sabrina Dubroca 2018-10-12 626 struct inet6_dev *idev; 5e670d844b2a4e David Ahern 2018-04-17 627 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 628 /* 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 629 * Okay, this does not seem to be appropriate 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 630 * for now, however, we need to check if it 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 631 * is really so; aka Router Reachability Probing. 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 632 * 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 633 * Router Reachability Probe MUST be rate-limited 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 634 * to no more than one per minute. 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 635 */ cc3a86c802f0ba David Ahern 2019-04-09 636 if (fib6_nh->fib_nh_gw_family) 7ff74a596b6aa4 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 637 return; 5e670d844b2a4e David Ahern 2018-04-17 638 cc3a86c802f0ba David Ahern 2019-04-09 639 nh_gw = &fib6_nh->fib_nh_gw6; cc3a86c802f0ba David Ahern 2019-04-09 640 dev = fib6_nh->fib_nh_dev; 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 641 rcu_read_lock_bh(); 5e670d844b2a4e David Ahern 2018-04-17 642 neigh = __ipv6_neigh_lookup_noref(dev, nh_gw); 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 643 if (neigh) { 8d6c31bf574177 Martin KaFai Lau 2015-07-24 644 if (neigh->nud_state & NUD_VALID) 8d6c31bf574177 Martin KaFai Lau 2015-07-24 645 goto out; 8d6c31bf574177 Martin KaFai Lau 2015-07-24 646 e3f0c73ec3f208 Cheng Lin 2019-08-27 647 idev = __in6_dev_get(dev); 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 648 write_lock(&neigh->lock); 990edb428c2c85 Martin KaFai Lau 2015-07-24 649 if (!(neigh->nud_state & NUD_VALID) && 990edb428c2c85 Martin KaFai Lau 2015-07-24 650 time_after(jiffies, dcd1f572954f9d David Ahern 2018-04-18 651 neigh->updated + idev->cnf.rtr_probe_interval)) { c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 652 work = kmalloc(sizeof(*work), GFP_ATOMIC); 990edb428c2c85 Martin KaFai Lau 2015-07-24 653 if (work) 7e980569642811 Jiri Benc 2013-12-11 654 __neigh_set_probe_once(neigh); 990edb428c2c85 Martin KaFai Lau 2015-07-24 655 } 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 656 write_unlock(&neigh->lock); 990edb428c2c85 Martin KaFai Lau 2015-07-24 657 } 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 658 c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 659 if (work) { cc3a86c802f0ba David Ahern 2019-04-09 @660 fib6_nh->last_probe = jiffies; c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 661 INIT_WORK(&work->work, rt6_probe_deferred); 5e670d844b2a4e David Ahern 2018-04-17 662 work->target = *nh_gw; 5e670d844b2a4e David Ahern 2018-04-17 663 dev_hold(dev); 5e670d844b2a4e David Ahern 2018-04-17 664 work->dev = dev; c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 665 schedule_work(&work->work); c2f17e827b4199 Hannes Frederic Sowa 2013-10-21 666 } 990edb428c2c85 Martin KaFai Lau 2015-07-24 667 8d6c31bf574177 Martin KaFai Lau 2015-07-24 668 out: 2152caea719657 YOSHIFUJI Hideaki / 吉藤英明 2013-01-17 669 rcu_read_unlock_bh(); f2c31e32b378a6 Eric Dumazet 2011-07-29 670 } 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 671 #else cc3a86c802f0ba David Ahern 2019-04-09 672 static inline void rt6_probe(struct fib6_nh *fib6_nh) 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 673 { 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 674 } 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 675 #endif 270972554c91ac YOSHIFUJI Hideaki 2006-03-20 676 :::::: The code at line 660 was first introduced by commit :::::: cc3a86c802f0ba9a2627aef256d95ae3b3fa6e91 ipv6: Change rt6_probe to take a fib6_nh :::::: TO: David Ahern :::::: CC: David S. Miller --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation