]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
freezer: exec should clear PF_NOFREEZE along with PF_KTHREAD
authorOleg Nesterov <oleg@redhat.com>
Thu, 25 Oct 2012 20:28:12 +0000 (22:28 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Tue, 30 Oct 2012 23:27:06 +0000 (23:27 +0000)
commit b40a79591ca918e7b91b0d9b6abd5d00f2e88c19 upstream.

flush_old_exec() clears PF_KTHREAD but forgets about PF_NOFREEZE.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[bwh: Backported to 3.2: PF_FORKNOEXEC is cleared elsewhere]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/exec.c

index 160cd2f6baf9614b1a6bc55f706e66e3e941ddcc..121ccae40abbe0beea759454f2db99e2d956305d 100644 (file)
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -1095,7 +1095,7 @@ int flush_old_exec(struct linux_binprm * bprm)
        bprm->mm = NULL;                /* We're using it now */
 
        set_fs(USER_DS);
-       current->flags &= ~(PF_RANDOMIZE | PF_KTHREAD);
+       current->flags &= ~(PF_RANDOMIZE | PF_KTHREAD | PF_NOFREEZE);
        flush_thread();
        current->personality &= ~bprm->per_clear;