snmp: SNMP_UPD_PO_STATS_BH() always called from softirq
authorEric Dumazet <eric.dumazet@gmail.com>
Tue, 22 Mar 2011 01:12:54 +0000 (18:12 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 Mar 2011 01:12:54 +0000 (18:12 -0700)
We dont need to test if we run from softirq context, we definitely are.

This saves few instructions in ip_rcv() & ip_rcv_finish()

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/snmp.h

index 762e2ab..27461d6 100644 (file)
@@ -150,7 +150,7 @@ struct linux_xfrm_mib {
 #define SNMP_UPD_PO_STATS_BH(mib, basefield, addend)   \
        do { \
                __typeof__(*mib[0]) *ptr = \
-                       __this_cpu_ptr((mib)[!in_softirq()]); \
+                       __this_cpu_ptr((mib)[0]); \
                ptr->mibs[basefield##PKTS]++; \
                ptr->mibs[basefield##OCTETS] += addend;\
        } while (0)
@@ -202,7 +202,7 @@ struct linux_xfrm_mib {
 #define SNMP_UPD_PO_STATS64_BH(mib, basefield, addend)                 \
        do {                                                            \
                __typeof__(*mib[0]) *ptr;                               \
-               ptr = __this_cpu_ptr((mib)[!in_softirq()]);             \
+               ptr = __this_cpu_ptr((mib)[0]);                         \
                u64_stats_update_begin(&ptr->syncp);                    \
                ptr->mibs[basefield##PKTS]++;                           \
                ptr->mibs[basefield##OCTETS] += addend;                 \