I agree, we should clear TIF_SIGPENDING. It is not so critical for user-space
tasks, but for the kernel thread it may remain pending forever, causing subtle
failures.
Gautham, isn't it possible to make a more simpler patch ? Just add PF_NOFREEZE
check to frozen_process,
static inline void frozen_process(struct task_struct *p)
{
if (!unlikely(current->flags & PF_NOFREEZE)) {
p->flags |= PF_FROZEN;
wmb();
}
clear_tsk_thread_flag(p, TIF_FREEZE);
}
No?
Oleg.
-