Re: [PATCH 2/8] kernel: unmask SIGSTOP for IO threads

From: Oleg Nesterov
Date: Fri Mar 26 2021 - 09:50:00 EST


Jens, sorry, I got lost :/

On 03/25, Jens Axboe wrote:
>
> With IO threads accepting signals, including SIGSTOP,

where can I find this change? Looks like I wasn't cc'ed...

> unmask the
> SIGSTOP signal from the default blocked mask.
>
> Signed-off-by: Jens Axboe <axboe@xxxxxxxxx>
> ---
> kernel/fork.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/fork.c b/kernel/fork.c
> index d3171e8e88e5..d5a40552910f 100644
> --- a/kernel/fork.c
> +++ b/kernel/fork.c
> @@ -2435,7 +2435,7 @@ struct task_struct *create_io_thread(int (*fn)(void *), void *arg, int node)
> tsk = copy_process(NULL, 0, node, &args);
> if (!IS_ERR(tsk)) {
> sigfillset(&tsk->blocked);
> - sigdelsetmask(&tsk->blocked, sigmask(SIGKILL));
> + sigdelsetmask(&tsk->blocked, sigmask(SIGKILL)|sigmask(SIGSTOP));

siginitsetinv(blocked, sigmask(SIGKILL)|sigmask(SIGSTOP)) but this is minor.

To remind, either way this is racy and can't really help.

And if "IO threads accepting signals" then I don't understand why. Sorry,
I must have missed something.

Oleg.