diff options
author | Denys Vlasenko <dvlasenk@redhat.com> | 2013-06-28 14:35:47 +0200 |
---|---|---|
committer | Denys Vlasenko <dvlasenk@redhat.com> | 2013-06-28 14:35:47 +0200 |
commit | 752e5a02e67f66f555aa39faf522f07126924e62 (patch) | |
tree | 9088aa896c3b5fab2fead93bb76415507cda5942 /signal.c | |
parent | 14d51a6423aa47378518a71e8345a3d1944d97e7 (diff) | |
download | strace-752e5a02e67f66f555aa39faf522f07126924e62.tar.gz strace-752e5a02e67f66f555aa39faf522f07126924e62.tar.bz2 strace-752e5a02e67f66f555aa39faf522f07126924e62.tar.xz |
Change upeek() to take pid, not full tcp.
This will be used by next change.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'signal.c')
-rw-r--r-- | signal.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -826,7 +826,7 @@ sys_sigreturn(struct tcb *tcp) if (entering(tcp)) { long usp; struct sigcontext_struct sc; - if (upeek(tcp, PT_GPR15, &usp) < 0) + if (upeek(tcp->pid, PT_GPR15, &usp) < 0) return 0; if (umove(tcp, usp + __SIGNAL_FRAMESIZE, &sc) < 0) return 0; @@ -853,7 +853,7 @@ sys_sigreturn(struct tcb *tcp) sigset_t sigm; /* offset of sigcontext in the kernel's sigframe structure: */ # define SIGFRAME_SC_OFFSET 0x90 - if (upeek(tcp, PT_R12, &sp) < 0) + if (upeek(tcp->pid, PT_R12, &sp) < 0) return 0; if (umove(tcp, sp + 16 + SIGFRAME_SC_OFFSET, &sc) < 0) return 0; @@ -888,7 +888,7 @@ sys_sigreturn(struct tcb *tcp) long usp; struct sigcontext sc; sigset_t sigm; - if (upeek(tcp, 4*PT_USP, &usp) < 0) + if (upeek(tcp->pid, 4*PT_USP, &usp) < 0) return 0; if (umove(tcp, usp, &sc) < 0) return 0; @@ -900,7 +900,7 @@ sys_sigreturn(struct tcb *tcp) long fp; struct sigcontext_struct sc; sigset_t sigm; - if (upeek(tcp, REG_FP, &fp) < 0) + if (upeek(tcp->pid, REG_FP, &fp) < 0) return 0; if (umove(tcp, fp, &sc) < 0) return 0; @@ -927,7 +927,7 @@ sys_sigreturn(struct tcb *tcp) long sp; struct ucontext uc; sigset_t sigm; - if (upeek(tcp, REG_SP, &sp) < 0) + if (upeek(tcp->pid, REG_SP, &sp) < 0) return 0; /* There are six words followed by a 128-byte siginfo. */ sp = sp + 6 * 4 + 128; @@ -986,7 +986,7 @@ sys_sigreturn(struct tcb *tcp) long sp; sigset_t sigm; /* Read r1, the stack pointer. */ - if (upeek(tcp, 1 * 4, &sp) < 0) + if (upeek(tcp->pid, 1 * 4, &sp) < 0) return 0; if (umove(tcp, sp, &sc) < 0) return 0; |