Messages in this thread Patch in this message | | | From | Daeho Jeong <> | Subject | [PATCH] f2fs: turn back remapped address in compressed page endio | Date | Tue, 27 Jul 2021 00:21:00 -0700 |
| |
From: Daeho Jeong <daehojeong@google.com>
Turned back the remmaped sector address to the address in the partition, when ending io, for compress cache to work properly.
Fixes: 6ce19aff0b8c ("f2fs: compress: add compress_inode to cache compressed blocks") Signed-off-by: Daeho Jeong <daehojeong@google.com> Signed-off-by: Youngjin Gil <youngjin.gil@samsung.com> Signed-off-by: Hyeong Jun Kim <hj514.kim@samsung.com> --- fs/f2fs/data.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 1a716c3b5457..53e71e1bb673 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -228,7 +228,13 @@ static void f2fs_handle_step_decompress(struct bio_post_read_ctx *ctx) struct bio_vec *bv; struct bvec_iter_all iter_all; bool all_compressed = true; - block_t blkaddr = SECTOR_TO_BLOCK(ctx->bio->bi_iter.bi_sector); + sector_t sector = ctx->bio->bi_iter.bi_sector; + block_t blkaddr; + + if (bio_flagged(ctx->bio, BIO_REMAPPED)) + sector -= ctx->bio->bi_bdev->bd_start_sect; + + blkaddr = SECTOR_TO_BLOCK(sector); bio_for_each_segment_all(bv, ctx->bio, iter_all) { struct page *page = bv->bv_page; -- 2.32.0.432.gabb21c7263-goog
| |