瀏覽代碼

[IPV6] ROUTE: Try to use router which is not known unreachable.

Only routers in "FAILED" state should be considered unreachable.
Otherwise, we do not try to use speicific routes unless all least specific
routers are considered unreachable.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
YOSHIFUJI Hideaki 18 年之前
父節點
當前提交
ea73ee23c4
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      net/ipv6/route.c

+ 2 - 0
net/ipv6/route.c

@@ -330,6 +330,8 @@ static int inline rt6_check_neigh(struct rt6_info *rt)
 		read_lock_bh(&neigh->lock);
 		read_lock_bh(&neigh->lock);
 		if (neigh->nud_state & NUD_VALID)
 		if (neigh->nud_state & NUD_VALID)
 			m = 2;
 			m = 2;
+		else if (!(neigh->nud_state & NUD_FAILED))
+			m = 1;
 		read_unlock_bh(&neigh->lock);
 		read_unlock_bh(&neigh->lock);
 	}
 	}
 	return m;
 	return m;