Hello, May be it is possible, eg. by adding more arguments to __ip_vs_get_out_rt and moving all dst checks and icmp_send there. But there are some dst checks specific to the forwarding method, so I'm
Both variants are starting to sound equally ugly :-) Let me ask about this situation in another way. IP input route lookup clients handle this transparently, even for routes with next-hop exceptions
Hello, This was my first thought but commit 27b75c95f1 (net: avoid RCU for NOCACHE dst) uses dst_hold for DST_NOCACHE dsts. IPVS wants to cache DST_NOCACHE entries (due to known-NH reasons) and later
It think it's much cleaner to have the callers of route lookups do skb_set_dst_noref(). Then you don't need any new interfaces, and you therefore don't need to expose bits of the noref implementation
Currently when forwarding requests to real servers we use dst_lock and atomic operations when cloning the dst_cache value. As the dst_cache value does not change most of the time it is better to use