ip_route_input会返回EHOSTUNREACH吗?

问题描述 投票:0回答:1

最近在学习Linux Bridge,发现

br_nf_pre_routing_finish
函数会调用ip_route_input函数,判断
ip_route_input
的返回值是否等于
EHOSTUNREACH
。但我进一步发现
ip_route_input
似乎并没有返回
EHOSTUNREACH
。谁能指出这是否是一个错误或者我是否错过了一些要点? linux版本是v6.8。 https://elixir.bootlin.com/linux/v6.8/source/net/bridge/br_netfilter_hooks.c#L388

linux linux-kernel
1个回答
0
投票
在某些情况下,

ip_route_input
确实返回
EHOSTUNREACH
。实际上,如果你仔细查看它的函数调用,你会注意到
ip_route_input_slow
有时会返回
EHOSTUNREACH
。这是以下代码路径:

br_nf_pre_routing_finish
 ip_route_input
  ip_route_input_noref
   ip_route_input_rcu
    ip_route_input_slow
© www.soinside.com 2019 - 2024. All rights reserved.