[PATCH 3.16.y-ckt 054/126] bcache: Make sure to pass GFP_WAIT to mempool_alloc()
Luis Henriques
luis.henriques at canonical.com
Tue Jan 27 12:15:59 UTC 2015
3.16.7-ckt5 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Kent Overstreet <kmo at daterainc.com>
commit bcf090e0040e30f8409e6a535a01e6473afb096f upstream.
this was very wrong - mempool_alloc() only guarantees success with GFP_WAIT.
bcache uses GFP_NOWAIT in various other places where we have a fallback,
circuits must've gotten crossed when writing this code or something.
Signed-off-by: Kent Overstreet <kmo at daterainc.com>
Cc: Gabriel de Perthuis <g2p.code at gmail.com>
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
---
drivers/md/bcache/btree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c
index 7347b6100961..5ef445d2d81e 100644
--- a/drivers/md/bcache/btree.c
+++ b/drivers/md/bcache/btree.c
@@ -202,7 +202,7 @@ void bch_btree_node_read_done(struct btree *b)
struct bset *i = btree_bset_first(b);
struct btree_iter *iter;
- iter = mempool_alloc(b->c->fill_iter, GFP_NOWAIT);
+ iter = mempool_alloc(b->c->fill_iter, GFP_NOIO);
iter->size = b->c->sb.bucket_size / b->c->sb.block_size;
iter->used = 0;
--
2.1.4
More information about the kernel-team
mailing list