compat: Fix sparse address space warnings
In compat_sys_old_getrlimit() we pass a kernel pointer to sys_old_getrlimit() inside a set_fs() bracket. This is okay, so we can safely cast the affected pointer to __user. In compat_clock_nanosleep_restart(), the variable "rmtp" holds a user pointer. Annotate it as such. Both of these warnings are ancient, but were reported by Fengguang Wu's test system due to other changes. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Cc: Toyo Abe <toyoa@mvista.com> Link: http://lkml.kernel.org/n/tip-507h7cq5e45eg6ygtykon3bf@git.kernel.org
This commit is contained in:
parent
81993e81a9
commit
dce44e03b0
|
@ -451,7 +451,7 @@ asmlinkage long compat_sys_old_getrlimit(unsigned int resource,
|
||||||
mm_segment_t old_fs = get_fs();
|
mm_segment_t old_fs = get_fs();
|
||||||
|
|
||||||
set_fs(KERNEL_DS);
|
set_fs(KERNEL_DS);
|
||||||
ret = sys_old_getrlimit(resource, &r);
|
ret = sys_old_getrlimit(resource, (struct rlimit __user *)&r);
|
||||||
set_fs(old_fs);
|
set_fs(old_fs);
|
||||||
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
|
@ -799,7 +799,7 @@ static long compat_clock_nanosleep_restart(struct restart_block *restart)
|
||||||
long err;
|
long err;
|
||||||
mm_segment_t oldfs;
|
mm_segment_t oldfs;
|
||||||
struct timespec tu;
|
struct timespec tu;
|
||||||
struct compat_timespec *rmtp = restart->nanosleep.compat_rmtp;
|
struct compat_timespec __user *rmtp = restart->nanosleep.compat_rmtp;
|
||||||
|
|
||||||
restart->nanosleep.rmtp = (struct timespec __user *) &tu;
|
restart->nanosleep.rmtp = (struct timespec __user *) &tu;
|
||||||
oldfs = get_fs();
|
oldfs = get_fs();
|
||||||
|
|
Loading…
Reference in New Issue