const struct xt_tee_tginfo *info = par->targinfo;
        struct iphdr *iph;
 
-       if (percpu_read(tee_active))
+       if (__this_cpu_read(tee_active))
                return XT_CONTINUE;
        /*
         * Copy the skb, and route the copy. Will later return %XT_CONTINUE for
        ip_send_check(iph);
 
        if (tee_tg_route4(skb, info)) {
-               percpu_write(tee_active, true);
+               __this_cpu_write(tee_active, true);
                ip_local_out(skb);
-               percpu_write(tee_active, false);
+               __this_cpu_write(tee_active, false);
        } else {
                kfree_skb(skb);
        }
 {
        const struct xt_tee_tginfo *info = par->targinfo;
 
-       if (percpu_read(tee_active))
+       if (__this_cpu_read(tee_active))
                return XT_CONTINUE;
        skb = pskb_copy(skb, GFP_ATOMIC);
        if (skb == NULL)
                --iph->hop_limit;
        }
        if (tee_tg_route6(skb, info)) {
-               percpu_write(tee_active, true);
+               __this_cpu_write(tee_active, true);
                ip6_local_out(skb);
-               percpu_write(tee_active, false);
+               __this_cpu_write(tee_active, false);
        } else {
                kfree_skb(skb);
        }
 
        inode->i_uid = current_fsuid();
        inode->i_gid = current_fsgid();
 
-       percpu_add(sockets_in_use, 1);
+       this_cpu_add(sockets_in_use, 1);
        return sock;
 }
 
        if (rcu_dereference_protected(sock->wq, 1)->fasync_list)
                printk(KERN_ERR "sock_release: fasync list not empty!\n");
 
-       percpu_sub(sockets_in_use, 1);
+       this_cpu_sub(sockets_in_use, 1);
        if (!sock->file) {
                iput(SOCK_INODE(sock));
                return;