ipv4: Dirty less cache lines in route caching paths.
Don't bother incrementing dst->__use and setting dst->lastuse, they are completely pointless and just slow things down. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ba3f7f04ef
commit
93ac53410a
|
@ -1443,7 +1443,7 @@ static int __mkroute_input(struct sk_buff *skb,
|
|||
if (!(flags & RTCF_DIRECTSRC) && !itag) {
|
||||
rth = FIB_RES_NH(*res).nh_rth_input;
|
||||
if (rt_cache_valid(rth)) {
|
||||
dst_use(&rth->dst, jiffies);
|
||||
dst_hold(&rth->dst);
|
||||
goto out;
|
||||
}
|
||||
do_cache = true;
|
||||
|
@ -1619,7 +1619,7 @@ local_input:
|
|||
if (!(flags & RTCF_DIRECTSRC) && !itag) {
|
||||
rth = FIB_RES_NH(res).nh_rth_input;
|
||||
if (rt_cache_valid(rth)) {
|
||||
dst_use(&rth->dst, jiffies);
|
||||
dst_hold(&rth->dst);
|
||||
goto set_and_out;
|
||||
}
|
||||
do_cache = true;
|
||||
|
@ -1789,7 +1789,7 @@ static struct rtable *__mkroute_output(const struct fib_result *res,
|
|||
if (!fnhe) {
|
||||
rth = FIB_RES_NH(*res).nh_rth_output;
|
||||
if (rt_cache_valid(rth)) {
|
||||
dst_use(&rth->dst, jiffies);
|
||||
dst_hold(&rth->dst);
|
||||
return rth;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue