diff options
Diffstat (limited to 'arch/um/sys-x86_64')
-rw-r--r-- | arch/um/sys-x86_64/signal.c | 6 | ||||
-rw-r--r-- | arch/um/sys-x86_64/tls.c | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/um/sys-x86_64/signal.c b/arch/um/sys-x86_64/signal.c index 9001d17..c98dd7f 100644 --- a/arch/um/sys-x86_64/signal.c +++ b/arch/um/sys-x86_64/signal.c @@ -16,7 +16,7 @@ void copy_sc(struct uml_pt_regs *regs, void *from) struct sigcontext *sc = from; #define GETREG(regs, regno, sc, regname) \ - (regs)->regs[(regno) / sizeof(unsigned long)] = (sc)->regname + (regs)->gp[(regno) / sizeof(unsigned long)] = (sc)->regname GETREG(regs, R8, sc, r8); GETREG(regs, R9, sc, r9); @@ -47,7 +47,7 @@ static int copy_sc_from_user(struct pt_regs *regs, int err = 0; #define GETREG(regs, regno, sc, regname) \ - __get_user((regs)->regs.regs[(regno) / sizeof(unsigned long)], \ + __get_user((regs)->regs.gp[(regno) / sizeof(unsigned long)], \ &(sc)->regname) err |= GETREG(regs, R8, from, r8); @@ -86,7 +86,7 @@ static int copy_sc_to_user(struct sigcontext __user *to, err |= __put_user(0, &to->fs); #define PUTREG(regs, regno, sc, regname) \ - __put_user((regs)->regs.regs[(regno) / sizeof(unsigned long)], \ + __put_user((regs)->regs.gp[(regno) / sizeof(unsigned long)], \ &(sc)->regname) err |= PUTREG(regs, RDI, to, rdi); diff --git a/arch/um/sys-x86_64/tls.c b/arch/um/sys-x86_64/tls.c index 3bd19a5..f7ba462 100644 --- a/arch/um/sys-x86_64/tls.c +++ b/arch/um/sys-x86_64/tls.c @@ -11,7 +11,7 @@ int arch_copy_tls(struct task_struct *t) * (which is argument 5, child_tid, of clone) so it can be set * during context switches. */ - t->thread.arch.fs = t->thread.regs.regs.regs[R8 / sizeof(long)]; + t->thread.arch.fs = t->thread.regs.regs.gp[R8 / sizeof(long)]; return 0; } |