Hi Andrew, Today's linux-next merge of the akpm tree got a conflict in arch/m68k/kernel/signal_no.c between commit de6bd4f40385 ("m68k: merge the MMU and non-MMU signal.c code") from the m68knommu tree and commit "m68k: use set_current_blocked() and block_sigmask()" from the akpm tree. The former merged this file into arch/m68k/kernel/signal.c, git applied the changes for arch/m68k/kernel/signal_mm.c in the akpm tree commit there. The whole patch is now as below. -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --git a/arch/m68k/kernel/signal.c b/arch/m68k/kernel/signal.c index 1747c70..c9f519f 100644 --- a/arch/m68k/kernel/signal.c +++ b/arch/m68k/kernel/signal.c @@ -230,12 +230,13 @@ static inline void push_cache(unsigned long vaddr) asmlinkage int sys_sigsuspend(int unused0, int unused1, old_sigset_t mask) { - mask &= _BLOCKABLE; - spin_lock_irq(¤t->sighand->siglock); + sigset_t blocked; + current->saved_sigmask = current->blocked; - siginitset(¤t->blocked, mask); - recalc_sigpending(); - spin_unlock_irq(¤t->sighand->siglock); + + mask &= _BLOCKABLE; + siginitset(&blocked, mask); + set_current_blocked(&blocked); current->state = TASK_INTERRUPTIBLE; schedule(); @@ -804,8 +805,7 @@ asmlinkage int do_sigreturn(unsigned long __unused) goto badframe; sigdelsetmask(&set, ~_BLOCKABLE); - current->blocked = set; - recalc_sigpending(); + set_current_blocked(&set); if (restore_sigcontext(regs, &frame->sc, frame + 1)) goto badframe; @@ -830,8 +830,7 @@ asmlinkage int do_rt_sigreturn(unsigned long __unused) goto badframe; sigdelsetmask(&set, ~_BLOCKABLE); - current->blocked = set; - recalc_sigpending(); + set_current_blocked(&set); if (rt_restore_ucontext(regs, sw, &frame->uc)) goto badframe; @@ -1150,10 +1149,7 @@ handle_signal(int sig, struct k_sigaction *ka, siginfo_t *info, if (err) return; - sigorsets(¤t->blocked,¤t->blocked,&ka->sa.sa_mask); - if (!(ka->sa.sa_flags & SA_NODEFER)) - sigaddset(¤t->blocked,sig); - recalc_sigpending(); + block_sigmask(ka, sig); if (test_thread_flag(TIF_DELAYED_TRACE)) { regs->sr &= ~0x8000;
Attachment:
pgp3MIiTudjjG.pgp
Description: PGP signature