From b1ebe582dc1e8826cf24eb727b01629036e61f63 Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Wed, 3 Mar 2010 17:50:17 -0800 Subject: [PATCH] --- yaml --- r: 187885 b: refs/heads/master c: 99ee4ca746dda71326db7645463b4075ac1d665c h: refs/heads/master i: 187883: e480fe954c583d72810116a49b46a600a8f48d3f v: v3 --- [refs] | 2 +- trunk/mm/mempolicy.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 6e9365f5e80a..00d97ed823dc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e6033e3b307fcfae08408e0673266db38392bda4 +refs/heads/master: 99ee4ca746dda71326db7645463b4075ac1d665c diff --git a/trunk/mm/mempolicy.c b/trunk/mm/mempolicy.c index 290fb5bf0440..3cec080faa23 100644 --- a/trunk/mm/mempolicy.c +++ b/trunk/mm/mempolicy.c @@ -1730,10 +1730,12 @@ struct mempolicy *__mpol_dup(struct mempolicy *old) if (!new) return ERR_PTR(-ENOMEM); + rcu_read_lock(); if (current_cpuset_is_being_rebound()) { nodemask_t mems = cpuset_mems_allowed(current); mpol_rebind_policy(old, &mems); } + rcu_read_unlock(); *new = *old; atomic_set(&new->refcnt, 1); return new;