Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop race

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Gautham R Shenoy
Date: Monday, April 23, 2007 - 3:38 am

On Sat, Apr 21, 2007 at 01:12:09AM +0400, Oleg Nesterov wrote:
This can race with hold_freezer_for_task() calling thaw_process. Earlier
thaw_process(p) was called only after the process 'p' was frozen.
Now with hold_freezer_for_task(), we can as well call thaw_process(p)
when 'p' is in the freezing stage. Hence the task_lock.
I know it's ugly, but couldn't think of any other alternative at that time.


Yes. If more than one tasks want another task to be temporarily thawed, this
won't work. I hadn't anticipated such a case. 

So can't we in that case find out the weight of the freeze_event variable and
subtract that weight from the count (if the count is <=0 ) ?

Thanks for the review.
Regards
gautham.
-- 
Gautham R Shenoy
Linux Technology Center
IBM India.
"Freedom comes with a price tag of responsibility, which is still a bargain,
because Freedom is priceless!"
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC 0/2] Fix Freezer related races., Gautham R Shenoy, (Thu Apr 19, 5:01 am)
[RFC PATCH 1/2] Fix PF_NOFREEZE and freezeable race, Gautham R Shenoy, (Thu Apr 19, 5:02 am)
[RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop race, Gautham R Shenoy, (Thu Apr 19, 5:04 am)
Re: [RFC PATCH 1/2] Fix PF_NOFREEZE and freezeable race, Rafael J. Wysocki, (Thu Apr 19, 2:39 pm)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Rafael J. Wysocki, (Fri Apr 20, 1:54 am)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Rafael J. Wysocki, (Fri Apr 20, 4:59 am)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Rafael J. Wysocki, (Fri Apr 20, 5:50 am)
Re: [RFC PATCH 1/2] Fix PF_NOFREEZE and freezeable race, Oleg Nesterov, (Fri Apr 20, 11:02 am)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Rafael J. Wysocki, (Fri Apr 20, 2:13 pm)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Rafael J. Wysocki, (Fri Apr 20, 2:45 pm)
[RFC][PATCH -mm 0/3] Separate freezer flags, Rafael J. Wysocki, (Sun Apr 22, 12:28 pm)
[RFC][PATCH -mm 1/3] Separate freezer from PM code, Rafael J. Wysocki, (Sun Apr 22, 12:33 pm)
[RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Sun Apr 22, 12:39 pm)
[RFC][PATCH -mm 3/3] freezer: Fix problem with kthread_stop, Rafael J. Wysocki, (Sun Apr 22, 12:40 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Sun Apr 22, 3:14 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Satyam Sharma, (Sun Apr 22, 8:18 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Satyam Sharma, (Sun Apr 22, 9:09 pm)
Re: [RFC PATCH 1/2] Fix PF_NOFREEZE and freezeable race, Gautham R Shenoy, (Mon Apr 23, 3:26 am)
Re: [RFC PATCH(experimental) 2/2] Fix freezer-kthread_stop ..., Gautham R Shenoy, (Mon Apr 23, 3:38 am)
Re: [RFC][PATCH -mm 1/3] Separate freezer from PM code, Pavel Machek, (Mon Apr 23, 3:41 am)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Gautham R Shenoy, (Mon Apr 23, 6:17 am)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Gautham R Shenoy, (Mon Apr 23, 7:19 am)
Re: [RFC PATCH 1/2] Fix PF_NOFREEZE and freezeable race, Oleg Nesterov, (Mon Apr 23, 10:49 am)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 11:49 am)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 12:06 pm)
Re: [RFC][PATCH -mm 3/3] freezer: Fix problem with kthread ..., Rafael J. Wysocki, (Mon Apr 23, 12:50 pm)
Re: [RFC][PATCH -mm 3/3] freezer: Fix problem with kthread ..., Rafael J. Wysocki, (Mon Apr 23, 12:55 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 12:57 pm)
Re: [RFC][PATCH -mm 3/3] freezer: Fix problem with kthread ..., Rafael J. Wysocki, (Mon Apr 23, 1:05 pm)
Re: [RFC][PATCH -mm 3/3] freezer: Fix problem with kthread ..., Rafael J. Wysocki, (Mon Apr 23, 2:30 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Oleg Nesterov, (Mon Apr 23, 3:23 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 3:40 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Gautham R Shenoy, (Mon Apr 23, 3:41 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 3:55 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Oleg Nesterov, (Mon Apr 23, 3:55 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Mon Apr 23, 4:10 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Oleg Nesterov, (Mon Apr 23, 4:19 pm)
Re: [RFC][PATCH -mm 2/3] freezer: Introduce freezer_flags, Rafael J. Wysocki, (Tue Apr 24, 4:32 am)