Re: [PATCH] kill(-1,sig)

vda (vda@port.imtp.ilyichevsk.odessa.ua)
Mon, 17 Dec 2001 14:06:31 -0200


On Monday 17 December 2001 09:53, Sean Hunter wrote:
> > Hmm. Looking at killall5 source I see
> >
> > kill(-1, STOP);
> > for(each proc with p.sid!=my_sid) kill(proc, sig);
> > kill(-1, CONT);
> >
> > I guess STOP will stop killall5 too? Not good indeed.
> >
> > We have two choices: either back it out or find a sane way to implement
> > killall5 with new kill -1 behaviour.
>
> Couldn't it just do:
>
> sigset_t new;
> sigset_t savemask;
> sigfillset (&new);
> sigprocmask (SIG_BLOCK, &new, &savemask);
>
> kill(-1, STOP);
> for(each proc with p.sid!=my_sid) kill(proc, sig);
> kill(-1, CONT);
>
> sigprocmask (SIG_SETMASK, &savemask, (sigset_t *) 0);
>
> ... in other words, block signals, do the killing, then unblock?

STOP cannot be blocked or trapped AFAIK.

--
vda
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/