this_cpu_read(*X) is faster than *this_cpu_ptr(X)

Signed-off-by: Eric Dumazet <eduma...@google.com>
---
 net/ipv6/route.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index 
fada5a13bcb2a286bb20a350c1873b1b16dc866a..a72d01010cb6a734b2c4ee2dd865390d88e6a3b2
 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -1268,10 +1268,9 @@ static struct rt6_info *ip6_rt_pcpu_alloc(const struct 
fib6_result *res)
 /* It should be called with rcu_read_lock() acquired */
 static struct rt6_info *rt6_get_pcpu_route(const struct fib6_result *res)
 {
-       struct rt6_info *pcpu_rt, **p;
+       struct rt6_info *pcpu_rt;
 
-       p = this_cpu_ptr(res->nh->rt6i_pcpu);
-       pcpu_rt = *p;
+       pcpu_rt = this_cpu_read(*res->nh->rt6i_pcpu);
 
        if (pcpu_rt)
                ip6_hold_safe(NULL, &pcpu_rt);
-- 
2.22.0.rc1.257.g3120a18244-goog

Reply via email to