Re: [PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-23 Thread Oleg Nesterov
Sorry, forgot to mention... On 02/23, Oleg Nesterov wrote: > > And let me repeat, as for coredump this can only solve the problems in > wait_for_dump_handler(). And, otoh, if we change freeze_task() then wait_event_freezable() should work just fine in wait_for_dump_handler(). > I'll try to make

Re: [PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-23 Thread Oleg Nesterov
On 02/20, Mandeep Singh Baines wrote: > > I think we need something like this in order to be able to fix > wait_event_freezable and friends. Here is one idea: > > #define __wait_event_freezable(wq, condition, ret) \ > do {

Re: [PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-20 Thread Mandeep Singh Baines
On Sat, Feb 16, 2013 at 9:12 AM, Oleg Nesterov wrote: > Forgot to mention... > > On 02/16, Oleg Nesterov wrote: >> On 02/16, Mandeep Singh Baines wrote: >> > >> > --- a/kernel/freezer.c >> > +++ b/kernel/freezer.c >> > @@ -81,6 +81,9 @@ bool __refrigerator(bool check_kthr_stop) >> > */ >> >

Re: [PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-16 Thread Oleg Nesterov
Forgot to mention... On 02/16, Oleg Nesterov wrote: > On 02/16, Mandeep Singh Baines wrote: > > > > --- a/kernel/freezer.c > > +++ b/kernel/freezer.c > > @@ -81,6 +81,9 @@ bool __refrigerator(bool check_kthr_stop) > > */ > > set_current_state(save); > > > > + /* Clear fake signal from f

Re: [PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-16 Thread Oleg Nesterov
On 02/16, Mandeep Singh Baines wrote: > > --- a/kernel/freezer.c > +++ b/kernel/freezer.c > @@ -81,6 +81,9 @@ bool __refrigerator(bool check_kthr_stop) >*/ > set_current_state(save); > > + /* Clear fake signal from freeze_task(). */ > + recalc_sigpending(); NACK. We can't do

[PATCH 4/5] freezer: clear fake signal on exit from __refrigerator

2013-02-16 Thread Mandeep Singh Baines
In freeze_task, a freeze request is sent as a fake signal. Recalculate signal pending on exit from __refrigerator so that TIF_SIGPENDING doesn't remain incorrectly set. Signed-off-by: Mandeep Singh Baines CC: Oleg Nesterov CC: Tejun Heo CC: Andrew Morton CC: Rafael J. Wysocki CC: Ingo Molnar