powerpc: Fix reading/writing FPRs on 32 bit apps with ptrace on 64 bit kernels
Subsystems (2)
PATCH 1/1 powerpc: Fix reading/writing FPRs on 32 bit apps with ptrace on 64 bit kernels
Fix the calculation for offsetting into the FPRs when ptracing a 32 bit app on 64 bit kernels.
Signed-off-by Michael Neuling <[email protected]>
---
benh: it'd be nice if this went back in to 27,28 & 29
Also, I vote we kill ptracing 64 bit apps from 32 apps as it's completely broken and no one has ever noticed.
arch/powerpc/kernel/ptrace32.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/powerpc/kernel/ptrace32.c +1 -1
@@ -67,7 +67,7 @@ static long compat_ptrace_old(struct tas/* Macros to workout the correct index for the FPR in the thread struct */ #define FPRNUMBER (i) (((i) - PT_FPR0) >> 1)#define FPRHALF (i) (((i) - PT_FPR0) & 1) -#define FPRINDEX (i) TS_FPRWIDTH * FPRNUMBER(i) + FPRHALF(i) +#define FPRINDEX (i) TS_FPRWIDTH * FPRNUMBER(i) * 2 + FPRHALF(i)long compat_arch_ptrace (struct task_struct *child,compat_long_t request,compat_ulong_t caddr,compat_ulong_t cdata)