diff options
| -rw-r--r-- | arch/powerpc/kernel/process.c | 4 | ||||
| -rw-r--r-- | include/asm-powerpc/processor.h | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index c6e81bbd615c..706090c99f47 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c | |||
| @@ -770,7 +770,7 @@ out: | |||
| 770 | return error; | 770 | return error; |
| 771 | } | 771 | } |
| 772 | 772 | ||
| 773 | static int validate_sp(unsigned long sp, struct task_struct *p, | 773 | int validate_sp(unsigned long sp, struct task_struct *p, |
| 774 | unsigned long nbytes) | 774 | unsigned long nbytes) |
| 775 | { | 775 | { |
| 776 | unsigned long stack_page = (unsigned long)task_stack_page(p); | 776 | unsigned long stack_page = (unsigned long)task_stack_page(p); |
| @@ -808,6 +808,8 @@ static int validate_sp(unsigned long sp, struct task_struct *p, | |||
| 808 | #define FRAME_MARKER 2 | 808 | #define FRAME_MARKER 2 |
| 809 | #endif | 809 | #endif |
| 810 | 810 | ||
| 811 | EXPORT_SYMBOL(validate_sp); | ||
| 812 | |||
| 811 | unsigned long get_wchan(struct task_struct *p) | 813 | unsigned long get_wchan(struct task_struct *p) |
| 812 | { | 814 | { |
| 813 | unsigned long ip, sp; | 815 | unsigned long ip, sp; |
diff --git a/include/asm-powerpc/processor.h b/include/asm-powerpc/processor.h index a64198fcfd02..57643b5b782f 100644 --- a/include/asm-powerpc/processor.h +++ b/include/asm-powerpc/processor.h | |||
| @@ -251,6 +251,10 @@ static inline unsigned long __pack_fe01(unsigned int fpmode) | |||
| 251 | #define cpu_relax() barrier() | 251 | #define cpu_relax() barrier() |
| 252 | #endif | 252 | #endif |
| 253 | 253 | ||
| 254 | /* Check that a certain kernel stack pointer is valid in task_struct p */ | ||
| 255 | int validate_sp(unsigned long sp, struct task_struct *p, | ||
| 256 | unsigned long nbytes); | ||
| 257 | |||
| 254 | /* | 258 | /* |
| 255 | * Prefetch macros. | 259 | * Prefetch macros. |
| 256 | */ | 260 | */ |
