openwrtv3/package/kernel/ar7-atm/patches-D7.04.03.00/190-2.6.32_proc_fixes.patch
Jonas Gorski 889b21f954 ar7-atm: drop LINUX_VERSION tests
Minimum supported kernel is 3.18, so we don't need to test for anything
older. In addition, the API hasn't changed since then, so we don't need
to check for any kernel version at all.  This helps to keeps the amount
of changes more managable.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00

61 lines
1.5 KiB
Diff

--- a/tn7dsl.c
+++ b/tn7dsl.c
@@ -197,7 +197,7 @@ led_reg_t ledreg[2];
static struct led_funcs ledreg[2];
#endif
-#define DEV_DSLMOD CTL_UNNUMBERED
+#define DEV_DSLMOD 0
#define MAX_STR_SIZE 256
#define DSL_MOD_SIZE 256
@@ -3421,9 +3421,9 @@ static int dslmod_sysctl(ctl_table *ctl,
*/
if(write)
{
- ret = proc_dostring(ctl, write, filp, buffer, lenp, 0);
+ ret = proc_dostring(ctl, write, buffer, lenp, 0);
- switch (ctl->ctl_name)
+ switch ((long)ctl->extra2)
{
case DEV_DSLMOD:
ptr = strpbrk(info, " \t");
@@ -3507,14 +3507,21 @@ static int dslmod_sysctl(ctl_table *ctl,
else
{
len += sprintf(info+len, mod_req);
- ret = proc_dostring(ctl, write, filp, buffer, lenp, 0);
+ ret = proc_dostring(ctl, write, buffer, lenp, 0);
}
return ret;
}
ctl_table dslmod_table[] = {
- {DEV_DSLMOD, "dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, &sysctl_string}
+ {
+ .procname = "dslmod",
+ .data = info,
+ .maxlen = DSL_MOD_SIZE,
+ .mode = 0644,
+ .proc_handler = &dslmod_sysctl,
+ .extra2 = (void *)DEV_DSLMOD,
+ }
,
{0}
};
@@ -3522,7 +3529,12 @@ ctl_table dslmod_table[] = {
/* Make sure that /proc/sys/dev is there */
ctl_table dslmod_root_table[] = {
#ifdef CONFIG_PROC_FS
- {CTL_DEV, "dev", NULL, 0, 0555, dslmod_table}
+ {
+ .procname = "dev",
+ .maxlen = 0,
+ .mode = 0555,
+ .child = dslmod_table,
+ }
,
#endif /* CONFIG_PROC_FS */
{0}