diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2020-02-22 11:01:44 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2020-07-27 14:31:07 -0400 |
commit | 47e12855a91d2a9ca18d8fe10382e5a8d87b1417 (patch) | |
tree | 0b129bd2d6e0e620358d5ce5b5d3c3857f3bde6f /arch/powerpc/kernel/ptrace/ptrace-novsx.c | |
parent | 0557d64d983e3dedead2d4b4e8abc49620d5f5d2 (diff) | |
download | linux-47e12855a91d2a9ca18d8fe10382e5a8d87b1417.tar.bz2 |
powerpc: switch to ->regset_get()
Note: compat variant of REGSET_TM_CGPR is almost certainly wrong;
it claims to be 48*64bit, but just as compat REGSET_GPR it stores
44*32bit of (truncated) registers + 4 32bit zeros... followed by
48 more 32bit zeroes. Might be too late to change - it's a userland
ABI, after all ;-/
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/powerpc/kernel/ptrace/ptrace-novsx.c')
-rw-r--r-- | arch/powerpc/kernel/ptrace/ptrace-novsx.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/ptrace/ptrace-novsx.c b/arch/powerpc/kernel/ptrace/ptrace-novsx.c index b2dc4e92d11a..b3b36835658a 100644 --- a/arch/powerpc/kernel/ptrace/ptrace-novsx.c +++ b/arch/powerpc/kernel/ptrace/ptrace-novsx.c @@ -19,15 +19,14 @@ * }; */ int fpr_get(struct task_struct *target, const struct user_regset *regset, - unsigned int pos, unsigned int count, void *kbuf, void __user *ubuf) + struct membuf to) { BUILD_BUG_ON(offsetof(struct thread_fp_state, fpscr) != offsetof(struct thread_fp_state, fpr[32])); flush_fp_to_thread(target); - return user_regset_copyout(&pos, &count, &kbuf, &ubuf, - &target->thread.fp_state, 0, -1); + return membuf_write(&to, &target->thread.fp_state, 33 * sizeof(u64)); } /* |