fix proc filesystem usage, patch from Wipster.
authorFlorian Fainelli <florian@openwrt.org>
Mon, 15 Nov 2010 18:33:09 +0000 (18:33 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Mon, 15 Nov 2010 18:33:09 +0000 (18:33 +0000)
SVN-Revision: 24008

package/ar7-atm/patches-D7.04.03.00/190-2.6.32_proc_fixes.patch
package/ar7-atm/patches-D7.05.01.00/190-2.6.32_proc_fixes.patch

index 4dcebc3d1200d6683410aa5295c0464436d076ba..11487bf7a6a734ca5b1d71bf5e5a02feb3325e1e 100644 (file)
@@ -1,8 +1,6 @@
-Index: sangam_atm-D7.04.03.00/tn7dsl.c
-===================================================================
---- sangam_atm-D7.04.03.00.orig/tn7dsl.c       2010-08-26 09:36:54.000000000 +0200
-+++ sangam_atm-D7.04.03.00/tn7dsl.c    2010-08-26 10:18:47.000000000 +0200
-@@ -203,7 +203,11 @@
+--- a/tn7dsl.c
++++ b/tn7dsl.c
+@@ -203,7 +203,11 @@ led_reg_t ledreg[2];
  static struct led_funcs ledreg[2];
  #endif
  
@@ -14,7 +12,7 @@ Index: sangam_atm-D7.04.03.00/tn7dsl.c
  #define MAX_STR_SIZE     256
  #define DSL_MOD_SIZE     256
  
-@@ -3431,9 +3435,16 @@
+@@ -3431,9 +3435,16 @@ static int dslmod_sysctl(ctl_table *ctl,
     */
    if(write)
      {
@@ -32,7 +30,7 @@ Index: sangam_atm-D7.04.03.00/tn7dsl.c
        {
        case DEV_DSLMOD:
        ptr = strpbrk(info, " \t");
-@@ -3517,14 +3528,22 @@
+@@ -3517,14 +3528,29 @@ static int dslmod_sysctl(ctl_table *ctl,
    else
      {
      len += sprintf(info+len, mod_req);
@@ -50,8 +48,32 @@ Index: sangam_atm-D7.04.03.00/tn7dsl.c
 +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
    {DEV_DSLMOD, "dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, &sysctl_string}
 +#else
-+  {"dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, NULL, (void *)DEV_DSLMOD}
++      {
++              .procname               = "dslmod",
++              .data                   = info,
++              .maxlen                 = DSL_MOD_SIZE,
++              .mode                   = 0644,
++              .proc_handler   = &dslmod_sysctl,
++              .extra2                 = (void *)DEV_DSLMOD,
++      }
 +#endif
    ,
    {0}
    };
+@@ -3532,7 +3558,16 @@ ctl_table dslmod_table[] = {
+ /* Make sure that /proc/sys/dev is there */
+ ctl_table dslmod_root_table[] = {
+ #ifdef CONFIG_PROC_FS
++      #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+   {CTL_DEV, "dev", NULL, 0, 0555, dslmod_table}
++      #else
++      {
++              .procname               = "dev",
++              .maxlen                 = 0,
++              .mode                   = 0555,
++              .child                  = dslmod_table,
++      }
++      #endif
+   ,
+ #endif /* CONFIG_PROC_FS */
+   {0}
index fae93ca29e1de8d5d794c5a3047f830acde0a0f6..587cb5f5680df4a0d4ee45566af2111d75021a85 100644 (file)
@@ -1,8 +1,20 @@
 Index: sangam_atm-D7.05.01.00/tn7dsl.c
 ===================================================================
---- sangam_atm-D7.05.01.00.orig/tn7dsl.c       2010-03-07 18:19:09.000000000 +0100
-+++ sangam_atm-D7.05.01.00/tn7dsl.c    2010-03-07 18:19:12.000000000 +0100
-@@ -3615,8 +3615,11 @@
+--- sangam_atm-D7.05.01.00.orig/tn7dsl.c       2010-11-09 18:32:33.478706990 +0100
++++ sangam_atm-D7.05.01.00/tn7dsl.c    2010-11-09 18:32:33.488706997 +0100
+@@ -215,7 +215,11 @@
+ static struct led_funcs ledreg[2];
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+ #define DEV_DSLMOD       CTL_UNNUMBERED
++#else
++#define DEV_DSLMOD    0
++#endif
+ #define MAX_STR_SIZE     256
+ #define DSL_MOD_SIZE     256
+@@ -3615,9 +3619,16 @@
     */
    if(write)
      {
@@ -12,10 +24,15 @@ Index: sangam_atm-D7.05.01.00/tn7dsl.c
 +#else
 +    ret = proc_dostring(ctl, write, buffer, lenp, 0);
 +#endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
      switch (ctl->ctl_name)
++#else
++    switch ((long)ctl->extra2)
++#endif
        {
        case DEV_DSLMOD:
-@@ -3701,7 +3704,11 @@
+       ptr = strpbrk(info, " \t");
+@@ -3701,14 +3712,29 @@
    else
      {
      len += sprintf(info+len, mod_req);
@@ -27,3 +44,38 @@ Index: sangam_atm-D7.05.01.00/tn7dsl.c
      }
    return ret;
  }
+ ctl_table dslmod_table[] = {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+   {DEV_DSLMOD, "dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, &sysctl_string}
++#else
++      {
++              .procname               = "dslmod",
++              .data                   = info,
++              .maxlen                 = DSL_MOD_SIZE,
++              .mode                   = 0644,
++              .proc_handler   = &dslmod_sysctl,
++              .extra2                 = (void *)DEV_DSLMOD,
++      }
++#endif
+   ,
+   {0}
+   };
+@@ -3716,7 +3742,16 @@
+ /* Make sure that /proc/sys/dev is there */
+ ctl_table dslmod_root_table[] = {
+ #ifdef CONFIG_PROC_FS
++      #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+   {CTL_DEV, "dev", NULL, 0, 0555, dslmod_table}
++      #else
++      {
++              .procname               = "dev",
++              .maxlen                 = 0,
++              .mode                   = 0555,
++              .child                  = dslmod_table,
++      }
++      #endif
+   ,
+ #endif /* CONFIG_PROC_FS */
+   {0}