diff --git a/[refs] b/[refs] index dc9f742c2e9f..dfcd9330844e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c223695634fb360ed65e5a811161853a05e46962 +refs/heads/master: 90c5029e471636f21221bf66b9a46ada2ab79a22 diff --git a/trunk/mm/mempolicy.c b/trunk/mm/mempolicy.c index cb41c31e7c87..1694845526be 100644 --- a/trunk/mm/mempolicy.c +++ b/trunk/mm/mempolicy.c @@ -1138,11 +1138,11 @@ void mpol_free_shared_policy(struct shared_policy *p) while (next) { n = rb_entry(next, struct sp_node, nd); next = rb_next(&n->nd); + rb_erase(&n->nd, &p->root); mpol_free(n->policy); kmem_cache_free(sn_cache, n); } spin_unlock(&p->lock); - p->root = RB_ROOT; } /* assumes fs == KERNEL_DS */