kernel: update kernel 4.4 to version 4.4.28
[openwrt/staging/wigyori.git] / target / linux / generic / patches-4.4 / 902-debloat_proc.patch
index 6568836b2c4376759acca7d0821309eb5246bebe..c90f5500e8ef9810529ef985a47ec537529a7883 100644 (file)
@@ -1,6 +1,6 @@
 --- a/fs/locks.c
 +++ b/fs/locks.c
-@@ -2703,6 +2703,8 @@ static const struct file_operations proc
+@@ -2712,6 +2712,8 @@ static const struct file_operations proc
  
  static int __init proc_locks_init(void)
  {
  
 --- a/net/ipv4/fib_trie.c
 +++ b/net/ipv4/fib_trie.c
-@@ -2646,10 +2646,12 @@ static const struct file_operations fib_
+@@ -2642,10 +2642,12 @@ static const struct file_operations fib_
  
  int __net_init fib_proc_init(struct net *net)
  {
                         &fib_triestat_fops))
                goto out2;
  
-@@ -2659,17 +2661,21 @@ int __net_init fib_proc_init(struct net
+@@ -2655,17 +2657,21 @@ int __net_init fib_proc_init(struct net
        return 0;
  
  out3:
  
 --- a/net/ipv4/route.c
 +++ b/net/ipv4/route.c
-@@ -419,6 +419,9 @@ static struct pernet_operations ip_rt_pr
+@@ -420,6 +420,9 @@ static struct pernet_operations ip_rt_pr
  
  static int __init ip_rt_proc_init(void)
  {
                                IPC_MSG_IDS, sysvipc_msg_proc_show);
 --- a/ipc/sem.c
 +++ b/ipc/sem.c
-@@ -191,6 +191,8 @@ void sem_exit_ns(struct ipc_namespace *n
+@@ -198,6 +198,8 @@ void sem_exit_ns(struct ipc_namespace *n
  void __init sem_init(void)
  {
        sem_init_ns(&init_ipc_ns);
        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 {                                                            \