diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-12-05 12:28:35 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2019-04-03 12:43:28 -0400 |
commit | fa34ad08b3aca3ed9522c51a0332191280e3f9be (patch) | |
tree | 606db31abeabf371f03f9b43d3c58975c49b1378 | |
parent | 3b997d93e4326426006356ec2653593f7b0d944e (diff) |
bcachefs: propagate BCH_WRITE_CACHED
-rw-r--r-- | fs/bcachefs/io.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/bcachefs/io.c b/fs/bcachefs/io.c index 93a3f1dec422..ede1ac1b62d1 100644 --- a/fs/bcachefs/io.c +++ b/fs/bcachefs/io.c @@ -408,6 +408,7 @@ static void init_append_extent(struct bch_write_op *op, struct bch_extent_crc_unpacked crc) { struct bkey_i_extent *e = bkey_extent_init(op->insert_keys.top); + struct bch_extent_ptr *ptr; op->pos.offset += crc.uncompressed_size; e->k.p = op->pos; @@ -418,6 +419,10 @@ static void init_append_extent(struct bch_write_op *op, bch2_alloc_sectors_append_ptrs(op->c, wp, &e->k_i, crc.compressed_size); + if (op->flags & BCH_WRITE_CACHED) + extent_for_each_ptr(extent_i_to_s(e), ptr) + ptr->cached = true; + bch2_keylist_push(&op->insert_keys); } |