linux_sysvec.c (bda2a3af25a3b6ca9afefbc3fc51fbb3494ee96e) | linux_sysvec.c (79065dba2a88baf780767cbb1bb31d4525a08528) |
---|---|
1/*- 2 * Copyright (c) 1994-1996 S�ren Schmidt 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 541 unchanged lines hidden (view full) --- 550 } 551 552 lmask.__bits[0] = frame.sf_sc.sc_mask; 553 for (i = 0; i < (LINUX_NSIG_WORDS-1); i++) 554 lmask.__bits[i+1] = frame.sf_extramask[i]; 555 PROC_LOCK(p); 556 linux_to_bsd_sigset(&lmask, &p->p_sigmask); 557 SIG_CANTMASK(p->p_sigmask); | 1/*- 2 * Copyright (c) 1994-1996 S�ren Schmidt 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 541 unchanged lines hidden (view full) --- 550 } 551 552 lmask.__bits[0] = frame.sf_sc.sc_mask; 553 for (i = 0; i < (LINUX_NSIG_WORDS-1); i++) 554 lmask.__bits[i+1] = frame.sf_extramask[i]; 555 PROC_LOCK(p); 556 linux_to_bsd_sigset(&lmask, &p->p_sigmask); 557 SIG_CANTMASK(p->p_sigmask); |
558 signotify(p); |
|
558 PROC_UNLOCK(p); 559 560 /* 561 * Restore signal context. 562 */ 563 /* %gs was restored by the trampoline. */ 564 regs->tf_fs = frame.sf_sc.sc_fs; 565 regs->tf_es = frame.sf_sc.sc_es; --- 83 unchanged lines hidden (view full) --- 649 if (!CS_SECURE(context->sc_cs)) { 650 trapsignal(p, SIGBUS, T_PROTFLT); 651 return(EINVAL); 652 } 653 654 PROC_LOCK(p); 655 linux_to_bsd_sigset(&uc.uc_sigmask, &p->p_sigmask); 656 SIG_CANTMASK(p->p_sigmask); | 559 PROC_UNLOCK(p); 560 561 /* 562 * Restore signal context. 563 */ 564 /* %gs was restored by the trampoline. */ 565 regs->tf_fs = frame.sf_sc.sc_fs; 566 regs->tf_es = frame.sf_sc.sc_es; --- 83 unchanged lines hidden (view full) --- 650 if (!CS_SECURE(context->sc_cs)) { 651 trapsignal(p, SIGBUS, T_PROTFLT); 652 return(EINVAL); 653 } 654 655 PROC_LOCK(p); 656 linux_to_bsd_sigset(&uc.uc_sigmask, &p->p_sigmask); 657 SIG_CANTMASK(p->p_sigmask); |
658 signotify(p); |
|
657 PROC_UNLOCK(p); 658 659 /* 660 * Restore signal context 661 */ 662 /* %gs was restored by the trampoline. */ 663 regs->tf_fs = context->sc_fs; 664 regs->tf_es = context->sc_es; --- 210 unchanged lines hidden --- | 659 PROC_UNLOCK(p); 660 661 /* 662 * Restore signal context 663 */ 664 /* %gs was restored by the trampoline. */ 665 regs->tf_fs = context->sc_fs; 666 regs->tf_es = context->sc_es; --- 210 unchanged lines hidden --- |