summaryrefslogtreecommitdiff
path: root/kernel/cpuset.c
diff options
context:
space:
mode:
authorScott Wood <scottwood@freescale.com>2014-04-07 23:49:35 (GMT)
committerScott Wood <scottwood@freescale.com>2014-04-07 23:49:35 (GMT)
commit62b8c978ee6b8d135d9e7953221de58000dba986 (patch)
tree683b04b2e627f6710c22c151b23c8cc9a165315e /kernel/cpuset.c
parent78fd82238d0e5716578c326404184a27ba67fd6e (diff)
downloadlinux-fsl-qoriq-62b8c978ee6b8d135d9e7953221de58000dba986.tar.xz
Rewind v3.13-rc3+ (78fd82238d0e5716) to v3.12
Diffstat (limited to 'kernel/cpuset.c')
-rw-r--r--kernel/cpuset.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 4772034..6bf981e 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -1033,10 +1033,8 @@ static void cpuset_change_task_nodemask(struct task_struct *tsk,
need_loop = task_has_mempolicy(tsk) ||
!nodes_intersects(*newmems, tsk->mems_allowed);
- if (need_loop) {
- local_irq_disable();
+ if (need_loop)
write_seqcount_begin(&tsk->mems_allowed_seq);
- }
nodes_or(tsk->mems_allowed, tsk->mems_allowed, *newmems);
mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP1);
@@ -1044,10 +1042,8 @@ static void cpuset_change_task_nodemask(struct task_struct *tsk,
mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP2);
tsk->mems_allowed = *newmems;
- if (need_loop) {
+ if (need_loop)
write_seqcount_end(&tsk->mems_allowed_seq);
- local_irq_enable();
- }
task_unlock(tsk);
}