Commit cc5f916e authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Linus Torvalds

Freezer: do not allow freezing processes to clear TIF_SIGPENDING

Do not allow processes to clear their TIF_SIGPENDING if TIF_FREEZE is set,
so that they will not race with the freezer (like mysqld does, for example).
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
Acked-by: default avatarNigel Cunningham <nigel@suspend2.net>
Acked-by: default avatarPavel Machek <pavel@ucw.cz>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent c8593884
...@@ -124,7 +124,7 @@ void recalc_sigpending_and_wake(struct task_struct *t) ...@@ -124,7 +124,7 @@ void recalc_sigpending_and_wake(struct task_struct *t)
void recalc_sigpending(void) void recalc_sigpending(void)
{ {
if (!recalc_sigpending_tsk(current)) if (!recalc_sigpending_tsk(current) && !freezing(current))
clear_thread_flag(TIF_SIGPENDING); clear_thread_flag(TIF_SIGPENDING);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment