diff --git a/net/ipv6/route.c b/net/ipv6/route.c index c7ebb46d803c..d937ee942a4f 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -634,6 +634,8 @@ static void rt6_probe(struct fib6_nh *fib6_nh) rcu_read_lock_bh(); last_probe = READ_ONCE(fib6_nh->last_probe); idev = __in6_dev_get(dev); + if (!idev) + goto out; neigh = __ipv6_neigh_lookup_noref(dev, nh_gw); if (neigh) { if (neigh->nud_state & NUD_VALID)