inet: Minimize use of cached route inetpeer.
[firefly-linux-kernel-4.4.55.git] / net / ipv4 / icmp.c
index 4bce5a2830aaee18dfd5838bf908b61d3df28b3d..4a049449305f536d9828e68dbc880699279d3150 100644 (file)
@@ -254,9 +254,10 @@ static inline bool icmpv4_xrlim_allow(struct net *net, struct rtable *rt,
 
        /* Limit if icmp type is enabled in ratemask. */
        if ((1 << type) & net->ipv4.sysctl_icmp_ratemask) {
-               struct inet_peer *peer = rt_get_peer_create(rt, fl4->daddr);
+               struct inet_peer *peer = inet_getpeer_v4(net->ipv4.peers, fl4->daddr, 1);
                rc = inet_peer_xrlim_allow(peer,
                                           net->ipv4.sysctl_icmp_ratelimit);
+               inet_putpeer(peer);
        }
 out:
        return rc;