From: Jeff Dike <[email protected]>
This patch adds ptrace_setfpregs and makes these functions return -errno on
failure.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <[email protected]>
---
linux-2.6.10-rc-paolo/arch/um/sys-i386/ptrace_user.c | 19 ++++++++++++++++---
1 files changed, 16 insertions(+), 3 deletions(-)
diff -puN arch/um/sys-i386/ptrace_user.c~uml-fix-ptrace-interfaces arch/um/sys-i386/ptrace_user.c
--- linux-2.6.10-rc/arch/um/sys-i386/ptrace_user.c~uml-fix-ptrace-interfaces 2004-11-24 01:06:35.525806848 +0100
+++ linux-2.6.10-rc-paolo/arch/um/sys-i386/ptrace_user.c 2004-11-24 01:06:35.528806392 +0100
@@ -17,17 +17,30 @@
int ptrace_getregs(long pid, unsigned long *regs_out)
{
- return(ptrace(PTRACE_GETREGS, pid, 0, regs_out));
+ if(ptrace(PTRACE_GETREGS, pid, 0, regs_out) < 0)
+ return(-errno);
+ return(0);
}
int ptrace_setregs(long pid, unsigned long *regs)
{
- return(ptrace(PTRACE_SETREGS, pid, 0, regs));
+ if(ptrace(PTRACE_SETREGS, pid, 0, regs) < 0)
+ return(-errno);
+ return(0);
}
int ptrace_getfpregs(long pid, unsigned long *regs)
{
- return(ptrace(PTRACE_GETFPREGS, pid, 0, regs));
+ if(ptrace(PTRACE_GETFPREGS, pid, 0, regs) < 0)
+ return(-errno);
+ return(0);
+}
+
+int ptrace_setfpregs(long pid, unsigned long *regs)
+{
+ if(ptrace(PTRACE_SETFPREGS, pid, 0, regs) < 0)
+ return(-errno);
+ return(0);
}
static void write_debugregs(int pid, unsigned long *regs)
_
[email protected] wrote:
> From: Jeff Dike <[email protected]>
>
> This patch adds ptrace_setfpregs and makes these functions return -errno on
> failure.
>
> Signed-off-by: Paolo 'Blaisorblade' Giarrusso <[email protected]>
> ---
>
> linux-2.6.10-rc-paolo/arch/um/sys-i386/ptrace_user.c | 19 ++++++++++++++++---
> 1 files changed, 16 insertions(+), 3 deletions(-)
>
> diff -puN arch/um/sys-i386/ptrace_user.c~uml-fix-ptrace-interfaces arch/um/sys-i386/ptrace_user.c
> --- linux-2.6.10-rc/arch/um/sys-i386/ptrace_user.c~uml-fix-ptrace-interfaces 2004-11-24 01:06:35.525806848 +0100
> +++ linux-2.6.10-rc-paolo/arch/um/sys-i386/ptrace_user.c 2004-11-24 01:06:35.528806392 +0100
> @@ -17,17 +17,30 @@
>
> int ptrace_getregs(long pid, unsigned long *regs_out)
> {
> - return(ptrace(PTRACE_GETREGS, pid, 0, regs_out));
> + if(ptrace(PTRACE_GETREGS, pid, 0, regs_out) < 0)
> + return(-errno);
> + return(0);
> }
>
> int ptrace_setregs(long pid, unsigned long *regs)
> {
> - return(ptrace(PTRACE_SETREGS, pid, 0, regs));
> + if(ptrace(PTRACE_SETREGS, pid, 0, regs) < 0)
> + return(-errno);
> + return(0);
> }
>
> int ptrace_getfpregs(long pid, unsigned long *regs)
> {
> - return(ptrace(PTRACE_GETFPREGS, pid, 0, regs));
> + if(ptrace(PTRACE_GETFPREGS, pid, 0, regs) < 0)
> + return(-errno);
> + return(0);
> +}
> +
> +int ptrace_setfpregs(long pid, unsigned long *regs)
> +{
> + if(ptrace(PTRACE_SETFPREGS, pid, 0, regs) < 0)
> + return(-errno);
> + return(0);
> }
>
> static void write_debugregs(int pid, unsigned long *regs)
Looks OK except that someone's SPACEBAR is broken (missing)
and there are (unneeded/unwanted) parens on the returns.
--
~Randy
On Wednesday 24 November 2004 03:50, Randy.Dunlap wrote:
> [email protected] wrote:
> > From: Jeff Dike <[email protected]>
> >
> > This patch adds ptrace_setfpregs and makes these functions return -errno
> > on failure.
> Looks OK except that someone's SPACEBAR is broken (missing)
> and there are (unneeded/unwanted) parens on the returns.
Yes, that is Jeff Dike's keyboard - it's cursing all over arch/um with that
style.
I'm going to resend it more conforming to the kernel style.
--
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729
http://www.user-mode-linux.org/~blaisorblade