From: Kent Overstreet Date: Tue, 14 Jun 2022 05:37:16 +0000 (-0400) Subject: bcachefs: Fix btree node read retries X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=c9bd67321e9b9bae0a9ba151a3906086878159b6;p=linux.git bcachefs: Fix btree node read retries b->written wasn't being reset to 0 in the btree node read retry path, causing decrypting & validation of previously read bsets to not be re-run - ouch. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/btree_io.c b/fs/bcachefs/btree_io.c index 598c30b7ab8be..b7441677dc332 100644 --- a/fs/bcachefs/btree_io.c +++ b/fs/bcachefs/btree_io.c @@ -879,6 +879,8 @@ int bch2_btree_node_read_done(struct bch_fs *c, struct bch_dev *ca, int ret, retry_read = 0, write = READ; b->version_ondisk = U16_MAX; + /* We might get called multiple times on read retry: */ + b->written = 0; iter = mempool_alloc(&c->fill_iter, GFP_NOIO); sort_iter_init(iter, b);