Commit 62034f03 authored by Al Viro's avatar Al Viro Committed by Paul Mackerras

[POWERPC] powerpc oprofile __user annotations

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent ed2bfcd2
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include <linux/sched.h> #include <linux/sched.h>
#include <asm/processor.h> #include <asm/processor.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/compat.h>
#define STACK_SP(STACK) *(STACK) #define STACK_SP(STACK) *(STACK)
...@@ -26,8 +27,9 @@ ...@@ -26,8 +27,9 @@
static unsigned int user_getsp32(unsigned int sp, int is_first) static unsigned int user_getsp32(unsigned int sp, int is_first)
{ {
unsigned int stack_frame[2]; unsigned int stack_frame[2];
void __user *p = compat_ptr(sp);
if (!access_ok(VERIFY_READ, sp, sizeof(stack_frame))) if (!access_ok(VERIFY_READ, p, sizeof(stack_frame)))
return 0; return 0;
/* /*
...@@ -35,8 +37,7 @@ static unsigned int user_getsp32(unsigned int sp, int is_first) ...@@ -35,8 +37,7 @@ static unsigned int user_getsp32(unsigned int sp, int is_first)
* which means that we've done all that we can do from * which means that we've done all that we can do from
* interrupt context. * interrupt context.
*/ */
if (__copy_from_user_inatomic(stack_frame, (void *)(long)sp, if (__copy_from_user_inatomic(stack_frame, p, sizeof(stack_frame)))
sizeof(stack_frame)))
return 0; return 0;
if (!is_first) if (!is_first)
...@@ -54,10 +55,10 @@ static unsigned long user_getsp64(unsigned long sp, int is_first) ...@@ -54,10 +55,10 @@ static unsigned long user_getsp64(unsigned long sp, int is_first)
{ {
unsigned long stack_frame[3]; unsigned long stack_frame[3];
if (!access_ok(VERIFY_READ, sp, sizeof(stack_frame))) if (!access_ok(VERIFY_READ, (void __user *)sp, sizeof(stack_frame)))
return 0; return 0;
if (__copy_from_user_inatomic(stack_frame, (void *)sp, if (__copy_from_user_inatomic(stack_frame, (void __user *)sp,
sizeof(stack_frame))) sizeof(stack_frame)))
return 0; return 0;
......
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