]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - include/net/ipip.h
tunnels: prepare percpu accounting
[mirror_ubuntu-zesty-kernel.git] / include / net / ipip.h
index 65caea8b414f0c5c60f7c4331bd7d7d6684ba9fb..58abbf966b0c816a3f22d0060fa0ad8aa08113ea 100644 (file)
@@ -45,7 +45,7 @@ struct ip_tunnel_prl_entry {
        struct rcu_head                 rcu_head;
 };
 
-#define IPTUNNEL_XMIT() do {                                           \
+#define __IPTUNNEL_XMIT(stats1, stats2) do {                           \
        int err;                                                        \
        int pkt_len = skb->len - skb_transport_offset(skb);             \
                                                                        \
@@ -54,12 +54,14 @@ struct ip_tunnel_prl_entry {
                                                                        \
        err = ip_local_out(skb);                                        \
        if (likely(net_xmit_eval(err) == 0)) {                          \
-               txq->tx_bytes += pkt_len;                               \
-               txq->tx_packets++;                                      \
+               (stats1)->tx_bytes += pkt_len;                          \
+               (stats1)->tx_packets++;                                 \
        } else {                                                        \
-               stats->tx_errors++;                                     \
-               stats->tx_aborted_errors++;                             \
+               (stats2)->tx_errors++;                                  \
+               (stats2)->tx_aborted_errors++;                          \
        }                                                               \
 } while (0)
 
+#define IPTUNNEL_XMIT() __IPTUNNEL_XMIT(txq, stats)
+
 #endif