Re: [PATCH 6/6] freezer: kill unused set_freezable_with_signal()
From: Oleg Nesterov
Date: Sun Sep 04 2011 - 14:49:49 EST
On 09/03, Tejun Heo wrote:
>
> This patch removes set_freezable_with_signal() along with
> PF_FREEZER_NOSIG
Great. I never understood PF_FREEZER_NOSIG logic ;)
One question,
> @@ -72,10 +72,6 @@ bool __refrigerator(bool check_kthr_stop)
> schedule();
> }
>
> - spin_lock_irq(¤t->sighand->siglock);
> - recalc_sigpending(); /* We sent fake signal, clean it up */
> - spin_unlock_irq(¤t->sighand->siglock);
> -
Why? This recalc_sigpending() makes sense imho. Otherwise the user-space
tasks (almost) always return with TIF_SIGPENDING. May be we can do this
under "if (PF_KTRHREAD)".
For example. Suppose the user-space task does wait_event_freezable()...
Hmm. OTOH, wait_event_freezable() looks wrong anyway... So probably
this doesn't matter. ptrace_stop/get_signal_to_deliver doesn't need
this, probably we do not care about the other callers.
It seems, a lot of get_signal_to_deliver() calles also call
try_to_freeze() for no reason.
So, yes, I am starting to think this change is fine too ;)
Oleg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/