Commit 7ab76d72 authored by Al Viro's avatar Al Viro Committed by Linus Torvalds

[PATCH] frv: sysctl __user annotations

Add __user annotations to FRV-specific sysctl stuff.
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 9e4d11f8
...@@ -137,7 +137,7 @@ unsigned long sleep_phys_sp(void *sp) ...@@ -137,7 +137,7 @@ unsigned long sleep_phys_sp(void *sp)
#define CTL_PM_P0 4 #define CTL_PM_P0 4
#define CTL_PM_CM 5 #define CTL_PM_CM 5
static int user_atoi(char *ubuf, size_t len) static int user_atoi(char __user *ubuf, size_t len)
{ {
char buf[16]; char buf[16];
unsigned long ret; unsigned long ret;
...@@ -159,7 +159,7 @@ static int user_atoi(char *ubuf, size_t len) ...@@ -159,7 +159,7 @@ static int user_atoi(char *ubuf, size_t len)
* Send us to sleep. * Send us to sleep.
*/ */
static int sysctl_pm_do_suspend(ctl_table *ctl, int write, struct file *filp, static int sysctl_pm_do_suspend(ctl_table *ctl, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *fpos) void __user *buffer, size_t *lenp, loff_t *fpos)
{ {
int retval, mode; int retval, mode;
...@@ -215,7 +215,7 @@ static int try_set_cmode(int new_cmode) ...@@ -215,7 +215,7 @@ static int try_set_cmode(int new_cmode)
static int cmode_procctl(ctl_table *ctl, int write, struct file *filp, static int cmode_procctl(ctl_table *ctl, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *fpos) void __user *buffer, size_t *lenp, loff_t *fpos)
{ {
int new_cmode; int new_cmode;
...@@ -227,9 +227,9 @@ static int cmode_procctl(ctl_table *ctl, int write, struct file *filp, ...@@ -227,9 +227,9 @@ static int cmode_procctl(ctl_table *ctl, int write, struct file *filp,
return try_set_cmode(new_cmode)?:*lenp; return try_set_cmode(new_cmode)?:*lenp;
} }
static int cmode_sysctl(ctl_table *table, int *name, int nlen, static int cmode_sysctl(ctl_table *table, int __user *name, int nlen,
void *oldval, size_t *oldlenp, void __user *oldval, size_t __user *oldlenp,
void *newval, size_t newlen, void **context) void __user *newval, size_t newlen, void **context)
{ {
if (oldval && oldlenp) { if (oldval && oldlenp) {
size_t oldlen; size_t oldlen;
...@@ -240,7 +240,7 @@ static int cmode_sysctl(ctl_table *table, int *name, int nlen, ...@@ -240,7 +240,7 @@ static int cmode_sysctl(ctl_table *table, int *name, int nlen,
if (oldlen != sizeof(int)) if (oldlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (put_user(clock_cmode_current, (unsigned int *)oldval) || if (put_user(clock_cmode_current, (unsigned __user *)oldval) ||
put_user(sizeof(int), oldlenp)) put_user(sizeof(int), oldlenp))
return -EFAULT; return -EFAULT;
} }
...@@ -250,7 +250,7 @@ static int cmode_sysctl(ctl_table *table, int *name, int nlen, ...@@ -250,7 +250,7 @@ static int cmode_sysctl(ctl_table *table, int *name, int nlen,
if (newlen != sizeof(int)) if (newlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (get_user(new_cmode, (int *)newval)) if (get_user(new_cmode, (int __user *)newval))
return -EFAULT; return -EFAULT;
return try_set_cmode(new_cmode)?:1; return try_set_cmode(new_cmode)?:1;
...@@ -318,7 +318,7 @@ static int try_set_cm(int new_cm) ...@@ -318,7 +318,7 @@ static int try_set_cm(int new_cm)
} }
static int p0_procctl(ctl_table *ctl, int write, struct file *filp, static int p0_procctl(ctl_table *ctl, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *fpos) void __user *buffer, size_t *lenp, loff_t *fpos)
{ {
int new_p0; int new_p0;
...@@ -330,9 +330,9 @@ static int p0_procctl(ctl_table *ctl, int write, struct file *filp, ...@@ -330,9 +330,9 @@ static int p0_procctl(ctl_table *ctl, int write, struct file *filp,
return try_set_p0(new_p0)?:*lenp; return try_set_p0(new_p0)?:*lenp;
} }
static int p0_sysctl(ctl_table *table, int *name, int nlen, static int p0_sysctl(ctl_table *table, int __user *name, int nlen,
void *oldval, size_t *oldlenp, void __user *oldval, size_t __user *oldlenp,
void *newval, size_t newlen, void **context) void __user *newval, size_t newlen, void **context)
{ {
if (oldval && oldlenp) { if (oldval && oldlenp) {
size_t oldlen; size_t oldlen;
...@@ -343,7 +343,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen, ...@@ -343,7 +343,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen,
if (oldlen != sizeof(int)) if (oldlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (put_user(clock_p0_current, (unsigned int *)oldval) || if (put_user(clock_p0_current, (unsigned __user *)oldval) ||
put_user(sizeof(int), oldlenp)) put_user(sizeof(int), oldlenp))
return -EFAULT; return -EFAULT;
} }
...@@ -353,7 +353,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen, ...@@ -353,7 +353,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen,
if (newlen != sizeof(int)) if (newlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (get_user(new_p0, (int *)newval)) if (get_user(new_p0, (int __user *)newval))
return -EFAULT; return -EFAULT;
return try_set_p0(new_p0)?:1; return try_set_p0(new_p0)?:1;
...@@ -362,7 +362,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen, ...@@ -362,7 +362,7 @@ static int p0_sysctl(ctl_table *table, int *name, int nlen,
} }
static int cm_procctl(ctl_table *ctl, int write, struct file *filp, static int cm_procctl(ctl_table *ctl, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *fpos) void __user *buffer, size_t *lenp, loff_t *fpos)
{ {
int new_cm; int new_cm;
...@@ -374,9 +374,9 @@ static int cm_procctl(ctl_table *ctl, int write, struct file *filp, ...@@ -374,9 +374,9 @@ static int cm_procctl(ctl_table *ctl, int write, struct file *filp,
return try_set_cm(new_cm)?:*lenp; return try_set_cm(new_cm)?:*lenp;
} }
static int cm_sysctl(ctl_table *table, int *name, int nlen, static int cm_sysctl(ctl_table *table, int __user *name, int nlen,
void *oldval, size_t *oldlenp, void __user *oldval, size_t __user *oldlenp,
void *newval, size_t newlen, void **context) void __user *newval, size_t newlen, void **context)
{ {
if (oldval && oldlenp) { if (oldval && oldlenp) {
size_t oldlen; size_t oldlen;
...@@ -387,7 +387,7 @@ static int cm_sysctl(ctl_table *table, int *name, int nlen, ...@@ -387,7 +387,7 @@ static int cm_sysctl(ctl_table *table, int *name, int nlen,
if (oldlen != sizeof(int)) if (oldlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (put_user(clock_cm_current, (unsigned int *)oldval) || if (put_user(clock_cm_current, (unsigned __user *)oldval) ||
put_user(sizeof(int), oldlenp)) put_user(sizeof(int), oldlenp))
return -EFAULT; return -EFAULT;
} }
...@@ -397,7 +397,7 @@ static int cm_sysctl(ctl_table *table, int *name, int nlen, ...@@ -397,7 +397,7 @@ static int cm_sysctl(ctl_table *table, int *name, int nlen,
if (newlen != sizeof(int)) if (newlen != sizeof(int))
return -EINVAL; return -EINVAL;
if (get_user(new_cm, (int *)newval)) if (get_user(new_cm, (int __user *)newval))
return -EFAULT; return -EFAULT;
return try_set_cm(new_cm)?:1; return try_set_cm(new_cm)?:1;
......
...@@ -49,7 +49,7 @@ static void frv_change_dcache_mode(unsigned long newmode) ...@@ -49,7 +49,7 @@ static void frv_change_dcache_mode(unsigned long newmode)
* handle requests to dynamically switch the write caching mode delivered by /proc * handle requests to dynamically switch the write caching mode delivered by /proc
*/ */
static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *ppos) void __user *buffer, size_t *lenp, loff_t *ppos)
{ {
unsigned long hsr0; unsigned long hsr0;
char buff[8]; char buff[8];
...@@ -123,7 +123,7 @@ static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, ...@@ -123,7 +123,7 @@ static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp,
*/ */
#ifdef CONFIG_MMU #ifdef CONFIG_MMU
static int procctl_frv_pin_cxnr(ctl_table *table, int write, struct file *filp, static int procctl_frv_pin_cxnr(ctl_table *table, int write, struct file *filp,
void *buffer, size_t *lenp, loff_t *ppos) void __user *buffer, size_t *lenp, loff_t *ppos)
{ {
pid_t pid; pid_t pid;
char buff[16], *p; char buff[16], *p;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment