aboutsummaryrefslogtreecommitdiff
path: root/sys/amd64/linux/linux_sysvec.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/amd64/linux/linux_sysvec.c')
-rw-r--r--sys/amd64/linux/linux_sysvec.c56
1 files changed, 28 insertions, 28 deletions
diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c
index ea9cb74dab0d..0545f334b1b5 100644
--- a/sys/amd64/linux/linux_sysvec.c
+++ b/sys/amd64/linux/linux_sysvec.c
@@ -638,36 +638,36 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask)
/* Save user context. */
bzero(&sf, sizeof(sf));
- bsd_to_linux_sigset(mask, &sf.sf_sc.uc_sigmask);
- bsd_to_linux_sigset(mask, &sf.sf_sc.uc_mcontext.sc_mask);
+ bsd_to_linux_sigset(mask, &sf.sf_uc.uc_sigmask);
+ bsd_to_linux_sigset(mask, &sf.sf_uc.uc_mcontext.sc_mask);
- sf.sf_sc.uc_stack.ss_sp = PTROUT(td->td_sigstk.ss_sp);
- sf.sf_sc.uc_stack.ss_size = td->td_sigstk.ss_size;
- sf.sf_sc.uc_stack.ss_flags = (td->td_pflags & TDP_ALTSTACK)
+ sf.sf_uc.uc_stack.ss_sp = PTROUT(td->td_sigstk.ss_sp);
+ sf.sf_uc.uc_stack.ss_size = td->td_sigstk.ss_size;
+ sf.sf_uc.uc_stack.ss_flags = (td->td_pflags & TDP_ALTSTACK)
? ((oonstack) ? LINUX_SS_ONSTACK : 0) : LINUX_SS_DISABLE;
- sf.sf_sc.uc_mcontext.sc_rdi = regs->tf_rdi;
- sf.sf_sc.uc_mcontext.sc_rsi = regs->tf_rsi;
- sf.sf_sc.uc_mcontext.sc_rdx = regs->tf_rdx;
- sf.sf_sc.uc_mcontext.sc_rbp = regs->tf_rbp;
- sf.sf_sc.uc_mcontext.sc_rbx = regs->tf_rbx;
- sf.sf_sc.uc_mcontext.sc_rcx = regs->tf_rcx;
- sf.sf_sc.uc_mcontext.sc_rax = regs->tf_rax;
- sf.sf_sc.uc_mcontext.sc_rip = regs->tf_rip;
- sf.sf_sc.uc_mcontext.sc_rsp = regs->tf_rsp;
- sf.sf_sc.uc_mcontext.sc_r8 = regs->tf_r8;
- sf.sf_sc.uc_mcontext.sc_r9 = regs->tf_r9;
- sf.sf_sc.uc_mcontext.sc_r10 = regs->tf_r10;
- sf.sf_sc.uc_mcontext.sc_r11 = regs->tf_r11;
- sf.sf_sc.uc_mcontext.sc_r12 = regs->tf_r12;
- sf.sf_sc.uc_mcontext.sc_r13 = regs->tf_r13;
- sf.sf_sc.uc_mcontext.sc_r14 = regs->tf_r14;
- sf.sf_sc.uc_mcontext.sc_r15 = regs->tf_r15;
- sf.sf_sc.uc_mcontext.sc_cs = regs->tf_cs;
- sf.sf_sc.uc_mcontext.sc_rflags = regs->tf_rflags;
- sf.sf_sc.uc_mcontext.sc_err = regs->tf_err;
- sf.sf_sc.uc_mcontext.sc_trapno = bsd_to_linux_trapcode(code);
- sf.sf_sc.uc_mcontext.sc_cr2 = (register_t)ksi->ksi_addr;
+ sf.sf_uc.uc_mcontext.sc_rdi = regs->tf_rdi;
+ sf.sf_uc.uc_mcontext.sc_rsi = regs->tf_rsi;
+ sf.sf_uc.uc_mcontext.sc_rdx = regs->tf_rdx;
+ sf.sf_uc.uc_mcontext.sc_rbp = regs->tf_rbp;
+ sf.sf_uc.uc_mcontext.sc_rbx = regs->tf_rbx;
+ sf.sf_uc.uc_mcontext.sc_rcx = regs->tf_rcx;
+ sf.sf_uc.uc_mcontext.sc_rax = regs->tf_rax;
+ sf.sf_uc.uc_mcontext.sc_rip = regs->tf_rip;
+ sf.sf_uc.uc_mcontext.sc_rsp = regs->tf_rsp;
+ sf.sf_uc.uc_mcontext.sc_r8 = regs->tf_r8;
+ sf.sf_uc.uc_mcontext.sc_r9 = regs->tf_r9;
+ sf.sf_uc.uc_mcontext.sc_r10 = regs->tf_r10;
+ sf.sf_uc.uc_mcontext.sc_r11 = regs->tf_r11;
+ sf.sf_uc.uc_mcontext.sc_r12 = regs->tf_r12;
+ sf.sf_uc.uc_mcontext.sc_r13 = regs->tf_r13;
+ sf.sf_uc.uc_mcontext.sc_r14 = regs->tf_r14;
+ sf.sf_uc.uc_mcontext.sc_r15 = regs->tf_r15;
+ sf.sf_uc.uc_mcontext.sc_cs = regs->tf_cs;
+ sf.sf_uc.uc_mcontext.sc_rflags = regs->tf_rflags;
+ sf.sf_uc.uc_mcontext.sc_err = regs->tf_err;
+ sf.sf_uc.uc_mcontext.sc_trapno = bsd_to_linux_trapcode(code);
+ sf.sf_uc.uc_mcontext.sc_cr2 = (register_t)ksi->ksi_addr;
/* Allocate space for the signal handler context. */
if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack &&
@@ -686,7 +686,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask)
regs->tf_rdi = sig; /* arg 1 in %rdi */
regs->tf_rax = 0;
regs->tf_rsi = (register_t)&sfp->sf_si; /* arg 2 in %rsi */
- regs->tf_rdx = (register_t)&sfp->sf_sc; /* arg 3 in %rdx */
+ regs->tf_rdx = (register_t)&sfp->sf_uc; /* arg 3 in %rdx */
regs->tf_rcx = (register_t)catcher;
/* Fill in POSIX parts. */