ipv6: added net argument to ICMP6_INC_STATS_BH
authorDenis V. Lunev <den@openvz.org>
Wed, 8 Oct 2008 17:33:26 +0000 (10:33 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 Oct 2008 18:14:13 +0000 (11:14 -0700)
Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/ipv6.h
net/dccp/ipv6.c
net/ipv6/icmp.c
net/ipv6/ip6_output.c
net/ipv6/mcast.c
net/ipv6/tcp_ipv6.c
net/sctp/ipv6.c

index 744fe7443cb97b752e17858bee903238bc28b89d..5107cd92a46718bd633ac764fee3e5be07e66c66 100644 (file)
@@ -141,7 +141,8 @@ DECLARE_SNMP_STAT(struct icmpv6msg_mib, icmpv6msg_statistics);
 
 #define ICMP6_INC_STATS(net, idev, field)      ({ (void)(net); \
                _DEVINC(icmpv6, , idev, field); })
-#define ICMP6_INC_STATS_BH(idev, field)        _DEVINC(icmpv6, _BH, idev, field)
+#define ICMP6_INC_STATS_BH(net, idev, field)   ({ (void)(net); \
+               _DEVINC(icmpv6, _BH, idev, field); })
 
 #define ICMP6MSGOUT_INC_STATS(idev, field) \
        _DEVINC(icmpv6msg, , idev, field +256)
index caa7f3469626a05969440ae788555afdfe459e40..11062780bb02b84990aa4c89e40d3815940ecec7 100644 (file)
@@ -98,7 +98,8 @@ static void dccp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
 
        if (skb->len < offset + sizeof(*dh) ||
            skb->len < offset + __dccp_basic_hdr_len(dh)) {
-               ICMP6_INC_STATS_BH(__in6_dev_get(skb->dev), ICMP6_MIB_INERRORS);
+               ICMP6_INC_STATS_BH(net, __in6_dev_get(skb->dev),
+                                  ICMP6_MIB_INERRORS);
                return;
        }
 
@@ -107,7 +108,8 @@ static void dccp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
                        &hdr->saddr, dh->dccph_sport, inet6_iif(skb));
 
        if (sk == NULL) {
-               ICMP6_INC_STATS_BH(__in6_dev_get(skb->dev), ICMP6_MIB_INERRORS);
+               ICMP6_INC_STATS_BH(net, __in6_dev_get(skb->dev),
+                                  ICMP6_MIB_INERRORS);
                return;
        }
 
index 758cdd7dc27e29676fd6e9e68b961eecd8133ecf..4c961556306a6883efcc3be76211f7c80ea348ac 100644 (file)
@@ -664,7 +664,7 @@ static int icmpv6_rcv(struct sk_buff *skb)
                skb_set_network_header(skb, nh);
        }
 
-       ICMP6_INC_STATS_BH(idev, ICMP6_MIB_INMSGS);
+       ICMP6_INC_STATS_BH(dev_net(dev), idev, ICMP6_MIB_INMSGS);
 
        saddr = &ipv6_hdr(skb)->saddr;
        daddr = &ipv6_hdr(skb)->daddr;
@@ -772,7 +772,7 @@ static int icmpv6_rcv(struct sk_buff *skb)
        return 0;
 
 discard_it:
-       ICMP6_INC_STATS_BH(idev, ICMP6_MIB_INERRORS);
+       ICMP6_INC_STATS_BH(dev_net(dev), idev, ICMP6_MIB_INERRORS);
 drop_no_count:
        kfree_skb(skb);
        return 0;
index f0fded630f57c0f0f05f00332830a071d7e9c0e3..e7eff320619ca7fa73b77be59672429032f85875 100644 (file)
@@ -1483,7 +1483,7 @@ int ip6_push_pending_frames(struct sock *sk)
                struct inet6_dev *idev = ip6_dst_idev(skb->dst);
 
                ICMP6MSGOUT_INC_STATS_BH(idev, icmp6_hdr(skb)->icmp6_type);
-               ICMP6_INC_STATS_BH(idev, ICMP6_MIB_OUTMSGS);
+               ICMP6_INC_STATS_BH(net, idev, ICMP6_MIB_OUTMSGS);
        }
 
        err = ip6_local_out(skb);
index fa413afeb99426656d9ddc2490db011673adb888..f06ceea1ffa0f9371dce16459313db00a07ace4e 100644 (file)
@@ -1475,7 +1475,7 @@ static void mld_sendpack(struct sk_buff *skb)
 out:
        if (!err) {
                ICMP6MSGOUT_INC_STATS_BH(idev, ICMPV6_MLD2_REPORT);
-               ICMP6_INC_STATS_BH(idev, ICMP6_MIB_OUTMSGS);
+               ICMP6_INC_STATS_BH(net, idev, ICMP6_MIB_OUTMSGS);
                IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_OUTMCASTPKTS);
        } else
                IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_OUTDISCARDS);
index 6268d266c0349f8ea42a6b4c4c4f4d672f715c2b..424d9c4a67ac39b95ca16fb50ff3e2fc6eb80df1 100644 (file)
@@ -330,7 +330,8 @@ static void tcp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
                        th->dest, &hdr->saddr, th->source, skb->dev->ifindex);
 
        if (sk == NULL) {
-               ICMP6_INC_STATS_BH(__in6_dev_get(skb->dev), ICMP6_MIB_INERRORS);
+               ICMP6_INC_STATS_BH(net, __in6_dev_get(skb->dev),
+                                  ICMP6_MIB_INERRORS);
                return;
        }
 
index c78da3c9dd347ed16952d4ba98eb1341574dff7d..4124bbb9994774cc6536cd1dd8f092202ca68d6e 100644 (file)
@@ -156,7 +156,7 @@ SCTP_STATIC void sctp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
        skb->network_header   = saveip;
        skb->transport_header = savesctp;
        if (!sk) {
-               ICMP6_INC_STATS_BH(idev, ICMP6_MIB_INERRORS);
+               ICMP6_INC_STATS_BH(dev_net(skb->dev), idev, ICMP6_MIB_INERRORS);
                goto out;
        }