- cleanup unnecessary header file - fix the race between set_mempolicy() and cpuset_change_task_nodemask() Signed-off-by: Miao Xie <miaox@xxxxxxxxxxxxxx> --- kernel/cpuset.c | 3 +-- kernel/exit.c | 1 - kernel/fork.c | 1 - 3 files changed, 1 insertions(+), 4 deletions(-) diff --git a/kernel/cpuset.c b/kernel/cpuset.c index 30cb9a2..d243a22 100644 --- a/kernel/cpuset.c +++ b/kernel/cpuset.c @@ -963,7 +963,6 @@ repeat: task_lock(tsk); nodes_or(tsk->mems_allowed, tsk->mems_allowed, *newmems); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP1); - task_unlock(tsk); /* @@ -985,6 +984,7 @@ repeat: * for the read-side. */ while (ACCESS_ONCE(tsk->mems_allowed_change_disable)) { + task_unlock(tsk); if (!task_curr(tsk)) yield(); goto repeat; @@ -999,7 +999,6 @@ repeat: */ smp_mb(); - task_lock(tsk); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP2); tsk->mems_allowed = *newmems; task_unlock(tsk); diff --git a/kernel/exit.c b/kernel/exit.c index 41bc5b2..0ecb17b 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -16,7 +16,6 @@ #include <linux/key.h> #include <linux/security.h> #include <linux/cpu.h> -#include <linux/cpuset.h> #include <linux/acct.h> #include <linux/tsacct_kern.h> #include <linux/file.h> diff --git a/kernel/fork.c b/kernel/fork.c index 6e87c95..f4f0951 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -31,7 +31,6 @@ #include <linux/nsproxy.h> #include <linux/capability.h> #include <linux/cpu.h> -#include <linux/cpuset.h> #include <linux/cgroup.h> #include <linux/security.h> #include <linux/hugetlb.h> -- 1.6.5.2 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>