diff options
-rw-r--r-- | fs/fscache/cookie.c | 4 | ||||
-rw-r--r-- | lib/radix-tree.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/fs/fscache/cookie.c b/fs/fscache/cookie.c index b1870a6c2cd3..e6854f5222f5 100644 --- a/fs/fscache/cookie.c +++ b/fs/fscache/cookie.c | |||
@@ -102,7 +102,9 @@ struct fscache_cookie *__fscache_acquire_cookie( | |||
102 | cookie->netfs_data = netfs_data; | 102 | cookie->netfs_data = netfs_data; |
103 | cookie->flags = 0; | 103 | cookie->flags = 0; |
104 | 104 | ||
105 | INIT_RADIX_TREE(&cookie->stores, GFP_NOFS); | 105 | /* radix tree insertion won't use the preallocation pool unless it's |
106 | * told it may not wait */ | ||
107 | INIT_RADIX_TREE(&cookie->stores, GFP_NOFS & ~__GFP_WAIT); | ||
106 | 108 | ||
107 | switch (cookie->def->type) { | 109 | switch (cookie->def->type) { |
108 | case FSCACHE_COOKIE_TYPE_INDEX: | 110 | case FSCACHE_COOKIE_TYPE_INDEX: |
diff --git a/lib/radix-tree.c b/lib/radix-tree.c index 23abbd93cae1..ae6106855561 100644 --- a/lib/radix-tree.c +++ b/lib/radix-tree.c | |||
@@ -200,6 +200,9 @@ radix_tree_node_free(struct radix_tree_node *node) | |||
200 | * ensure that the addition of a single element in the tree cannot fail. On | 200 | * ensure that the addition of a single element in the tree cannot fail. On |
201 | * success, return zero, with preemption disabled. On error, return -ENOMEM | 201 | * success, return zero, with preemption disabled. On error, return -ENOMEM |
202 | * with preemption not disabled. | 202 | * with preemption not disabled. |
203 | * | ||
204 | * To make use of this facility, the radix tree must be initialised without | ||
205 | * __GFP_WAIT being passed to INIT_RADIX_TREE(). | ||
203 | */ | 206 | */ |
204 | int radix_tree_preload(gfp_t gfp_mask) | 207 | int radix_tree_preload(gfp_t gfp_mask) |
205 | { | 208 | { |