summaryrefslogtreecommitdiff
path: root/lib/idr.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-03-24 05:38:30 +0300
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-03-24 05:38:30 +0300
commit9e41d9597e7825ec20d690013d32bcec5f3fe16a (patch)
treeac6fea59e9a4a1c2183d6bbd6ffa760680673afb /lib/idr.c
parent77ecfe8d427f554fabbf258e9d789f1d4c3afd63 (diff)
parent8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84 (diff)
downloadlinux-9e41d9597e7825ec20d690013d32bcec5f3fe16a.tar.xz
Merge commit 'origin/master' into next
Diffstat (limited to 'lib/idr.c')
-rw-r--r--lib/idr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/idr.c b/lib/idr.c
index c11c5765cdef..dab4bca86f5d 100644
--- a/lib/idr.c
+++ b/lib/idr.c
@@ -449,6 +449,7 @@ void idr_remove_all(struct idr *idp)
n = idp->layers * IDR_BITS;
p = idp->top;
+ rcu_assign_pointer(idp->top, NULL);
max = 1 << n;
id = 0;
@@ -467,7 +468,6 @@ void idr_remove_all(struct idr *idp)
p = *--paa;
}
}
- rcu_assign_pointer(idp->top, NULL);
idp->layers = 0;
}
EXPORT_SYMBOL(idr_remove_all);