~ubuntu-branches/ubuntu/precise/linux-ti-omap4/precise

« back to all changes in this revision

Viewing changes to arch/x86/kernel/signal.c

  • Committer: Bazaar Package Importer
  • Author(s): Paolo Pisati
  • Date: 2011-06-29 15:23:51 UTC
  • mfrom: (26.1.1 natty-proposed)
  • Revision ID: james.westby@ubuntu.com-20110629152351-xs96tm303d95rpbk
Tags: 3.0.0-1200.2
* Rebased against 3.0.0-6.7
* BSP from TI based on 3.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
601
601
                goto badframe;
602
602
 
603
603
        sigdelsetmask(&set, ~_BLOCKABLE);
604
 
        spin_lock_irq(&current->sighand->siglock);
605
 
        current->blocked = set;
606
 
        recalc_sigpending();
607
 
        spin_unlock_irq(&current->sighand->siglock);
 
604
        set_current_blocked(&set);
608
605
 
609
606
        if (restore_sigcontext(regs, &frame->uc.uc_mcontext, &ax))
610
607
                goto badframe;
682
679
handle_signal(unsigned long sig, siginfo_t *info, struct k_sigaction *ka,
683
680
              sigset_t *oldset, struct pt_regs *regs)
684
681
{
 
682
        sigset_t blocked;
685
683
        int ret;
686
684
 
687
685
        /* Are we from a system call? */
741
739
         */
742
740
        regs->flags &= ~X86_EFLAGS_TF;
743
741
 
744
 
        spin_lock_irq(&current->sighand->siglock);
745
 
        sigorsets(&current->blocked, &current->blocked, &ka->sa.sa_mask);
 
742
        sigorsets(&blocked, &current->blocked, &ka->sa.sa_mask);
746
743
        if (!(ka->sa.sa_flags & SA_NODEFER))
747
 
                sigaddset(&current->blocked, sig);
748
 
        recalc_sigpending();
749
 
        spin_unlock_irq(&current->sighand->siglock);
 
744
                sigaddset(&blocked, sig);
 
745
        set_current_blocked(&blocked);
750
746
 
751
747
        tracehook_signal_handler(sig, info, ka, regs,
752
748
                                 test_thread_flag(TIF_SINGLESTEP));