Messages in this thread | | | Date | Thu, 6 Jun 2019 13:05:22 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH -mm 0/1] signal: simplify set_user_sigmask/restore_user_sigmask |
| |
On 06/06, David Laight wrote: > > If a signal handler is called, I presume that the trampoline > calls back into the kernel to get further handlers called > and to finally restore the original signal mask?
See sigmask_to_save(), this is what the kernel records in uc.uc_sigmask before the signal handler runs, after that current->saved_sigmask has no meaning.
When signal handler returns it does sys_rt_sigreturn() which restores the original mask saved in uc_sigmask.
> What happens if a signal handler calls something that > would normally write to current->saved_sigmask?
See above.
Oleg.
| |