Author: nbd Date: 2016-01-15 11:47:14 +0100 (Fri, 15 Jan 2016) New Revision: 48239
Modified: trunk/target/linux/generic/patches-4.1/902-debloat_proc.patch trunk/target/linux/generic/patches-4.3/902-debloat_proc.patch trunk/target/linux/generic/patches-4.4/902-debloat_proc.patch Log: kernel: compile out SNMP MIB related counting if debloat-proc is active - improves network stack performance Signed-off-by: Felix Fietkau <[email protected]> Modified: trunk/target/linux/generic/patches-4.1/902-debloat_proc.patch =================================================================== --- trunk/target/linux/generic/patches-4.1/902-debloat_proc.patch 2016-01-14 14:27:23 UTC (rev 48238) +++ trunk/target/linux/generic/patches-4.1/902-debloat_proc.patch 2016-01-15 10:47:14 UTC (rev 48239) @@ -339,3 +339,47 @@ remove_proc_entry("dev", net->proc_net); } +--- a/include/net/snmp.h ++++ b/include/net/snmp.h +@@ -123,6 +123,30 @@ struct linux_xfrm_mib { + #define DECLARE_SNMP_STAT(type, name) \ + extern __typeof__(type) __percpu *name + ++#ifdef CONFIG_PROC_STRIPPED ++#define SNMP_INC_STATS_BH(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_USER(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_ATOMIC_LONG(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_DEC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_BH(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_USER(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS_BH(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++ ++#else ++ + #define SNMP_INC_STATS_BH(mib, field) \ + __this_cpu_inc(mib->mibs[field]) + +@@ -159,8 +183,9 @@ struct linux_xfrm_mib { + __this_cpu_add(ptr[basefield##OCTETS], addend); \ + } while (0) + ++#endif + +-#if BITS_PER_LONG==32 ++#if (BITS_PER_LONG==32) && !defined(CONFIG_PROC_STRIPPED) + + #define SNMP_ADD_STATS64_BH(mib, field, addend) \ + do { \ Modified: trunk/target/linux/generic/patches-4.3/902-debloat_proc.patch =================================================================== --- trunk/target/linux/generic/patches-4.3/902-debloat_proc.patch 2016-01-14 14:27:23 UTC (rev 48238) +++ trunk/target/linux/generic/patches-4.3/902-debloat_proc.patch 2016-01-15 10:47:14 UTC (rev 48239) @@ -339,3 +339,47 @@ remove_proc_entry("dev", net->proc_net); } +--- a/include/net/snmp.h ++++ b/include/net/snmp.h +@@ -123,6 +123,30 @@ struct linux_xfrm_mib { + #define DECLARE_SNMP_STAT(type, name) \ + extern __typeof__(type) __percpu *name + ++#ifdef CONFIG_PROC_STRIPPED ++#define SNMP_INC_STATS_BH(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_USER(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_ATOMIC_LONG(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_DEC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_BH(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_USER(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS_BH(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++ ++#else ++ + #define SNMP_INC_STATS_BH(mib, field) \ + __this_cpu_inc(mib->mibs[field]) + +@@ -159,8 +183,9 @@ struct linux_xfrm_mib { + __this_cpu_add(ptr[basefield##OCTETS], addend); \ + } while (0) + ++#endif + +-#if BITS_PER_LONG==32 ++#if (BITS_PER_LONG==32) && !defined(CONFIG_PROC_STRIPPED) + + #define SNMP_ADD_STATS64_BH(mib, field, addend) \ + do { \ Modified: trunk/target/linux/generic/patches-4.4/902-debloat_proc.patch =================================================================== --- trunk/target/linux/generic/patches-4.4/902-debloat_proc.patch 2016-01-14 14:27:23 UTC (rev 48238) +++ trunk/target/linux/generic/patches-4.4/902-debloat_proc.patch 2016-01-15 10:47:14 UTC (rev 48239) @@ -339,3 +339,47 @@ remove_proc_entry("dev", net->proc_net); } +--- a/include/net/snmp.h ++++ b/include/net/snmp.h +@@ -123,6 +123,30 @@ struct linux_xfrm_mib { + #define DECLARE_SNMP_STAT(type, name) \ + extern __typeof__(type) __percpu *name + ++#ifdef CONFIG_PROC_STRIPPED ++#define SNMP_INC_STATS_BH(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_USER(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS_ATOMIC_LONG(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_INC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_DEC_STATS(mib, field) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_BH(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS_USER(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_ADD_STATS(mib, field, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++#define SNMP_UPD_PO_STATS_BH(mib, basefield, addend) \ ++ do { (void) mib->mibs[0]; } while(0) ++ ++#else ++ + #define SNMP_INC_STATS_BH(mib, field) \ + __this_cpu_inc(mib->mibs[field]) + +@@ -159,8 +183,9 @@ struct linux_xfrm_mib { + __this_cpu_add(ptr[basefield##OCTETS], addend); \ + } while (0) + ++#endif + +-#if BITS_PER_LONG==32 ++#if (BITS_PER_LONG==32) && !defined(CONFIG_PROC_STRIPPED) + + #define SNMP_ADD_STATS64_BH(mib, field, addend) \ + do { \ _______________________________________________ openwrt-commits mailing list [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits
