diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-15 13:22:39 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-15 13:28:15 -0500 |
commit | dc5d73b3db6694d73a6e01da4d24e0289c560593 (patch) | |
tree | 76262f73028f54a92fd09962a14aa7c30d51558c | |
parent | 01226ed90cc4526d02b4eb27810c80e0996e4a97 (diff) |
bcachefs: use reserve when open buckets pinned
-rw-r--r-- | fs/bcachefs/fs-io.c | 8 | ||||
-rw-r--r-- | fs/bcachefs/io.c | 3 | ||||
-rw-r--r-- | fs/bcachefs/move.c | 1 |
3 files changed, 9 insertions, 3 deletions
diff --git a/fs/bcachefs/fs-io.c b/fs/bcachefs/fs-io.c index 989239aa7d3b..fb777f958dcd 100644 --- a/fs/bcachefs/fs-io.c +++ b/fs/bcachefs/fs-io.c @@ -452,14 +452,18 @@ static int bchfs_write_index_update(struct bch_write_op *wop) ret = bch2_btree_insert_at(wop->c, &wop->res, &hook.hook, op_journal_seq(wop), - BTREE_INSERT_NOFAIL|BTREE_INSERT_ATOMIC, + BTREE_INSERT_NOFAIL| + BTREE_INSERT_ATOMIC| + BTREE_INSERT_USE_RESERVE, BTREE_INSERT_ENTRY(&extent_iter, k), BTREE_INSERT_ENTRY_EXTRA_RES(&inode_iter, &hook.inode_p.inode.k_i, 2)); } else { ret = bch2_btree_insert_at(wop->c, &wop->res, &hook.hook, op_journal_seq(wop), - BTREE_INSERT_NOFAIL|BTREE_INSERT_ATOMIC, + BTREE_INSERT_NOFAIL| + BTREE_INSERT_ATOMIC| + BTREE_INSERT_USE_RESERVE, BTREE_INSERT_ENTRY(&extent_iter, k)); } diff --git a/fs/bcachefs/io.c b/fs/bcachefs/io.c index 77bd7b00e3c7..13495d487a68 100644 --- a/fs/bcachefs/io.c +++ b/fs/bcachefs/io.c @@ -221,7 +221,8 @@ int bch2_write_index_default(struct bch_write_op *op) ret = bch2_btree_insert_list_at(&iter, keys, &op->res, NULL, op_journal_seq(op), - BTREE_INSERT_NOFAIL); + BTREE_INSERT_NOFAIL| + BTREE_INSERT_USE_RESERVE); bch2_btree_iter_unlock(&iter); return ret; diff --git a/fs/bcachefs/move.c b/fs/bcachefs/move.c index 72cd4c713a72..6f996c2c25e1 100644 --- a/fs/bcachefs/move.c +++ b/fs/bcachefs/move.c @@ -151,6 +151,7 @@ static int bch2_migrate_index_update(struct bch_write_op *op) NULL, op_journal_seq(op), BTREE_INSERT_ATOMIC| BTREE_INSERT_NOFAIL| + BTREE_INSERT_USE_RESERVE| m->data_opts.btree_insert_flags, BTREE_INSERT_ENTRY(&iter, &insert->k_i)); if (!ret) |