提交 e5c4cb9b 编写于 作者: Q Qu Wenruo 提交者: Mike Snitzer

dm log writes: record metadata flag for better flags record

So developer could distinguish data and metadata bios easier.
Signed-off-by: NQu Wenruo <wqu@suse.com>
Reviewed-by: NJosef Bacik <jbacik@fb.com>
Signed-off-by: NMike Snitzer <snitzer@redhat.com>
上级 e16b4f99
...@@ -56,6 +56,7 @@ ...@@ -56,6 +56,7 @@
#define LOG_FUA_FLAG (1 << 1) #define LOG_FUA_FLAG (1 << 1)
#define LOG_DISCARD_FLAG (1 << 2) #define LOG_DISCARD_FLAG (1 << 2)
#define LOG_MARK_FLAG (1 << 3) #define LOG_MARK_FLAG (1 << 3)
#define LOG_METADATA_FLAG (1 << 4)
#define WRITE_LOG_VERSION 1ULL #define WRITE_LOG_VERSION 1ULL
#define WRITE_LOG_MAGIC 0x6a736677736872ULL #define WRITE_LOG_MAGIC 0x6a736677736872ULL
...@@ -699,6 +700,7 @@ static int log_writes_map(struct dm_target *ti, struct bio *bio) ...@@ -699,6 +700,7 @@ static int log_writes_map(struct dm_target *ti, struct bio *bio)
bool flush_bio = (bio->bi_opf & REQ_PREFLUSH); bool flush_bio = (bio->bi_opf & REQ_PREFLUSH);
bool fua_bio = (bio->bi_opf & REQ_FUA); bool fua_bio = (bio->bi_opf & REQ_FUA);
bool discard_bio = (bio_op(bio) == REQ_OP_DISCARD); bool discard_bio = (bio_op(bio) == REQ_OP_DISCARD);
bool meta_bio = (bio->bi_opf & REQ_META);
pb->block = NULL; pb->block = NULL;
...@@ -743,6 +745,8 @@ static int log_writes_map(struct dm_target *ti, struct bio *bio) ...@@ -743,6 +745,8 @@ static int log_writes_map(struct dm_target *ti, struct bio *bio)
block->flags |= LOG_FUA_FLAG; block->flags |= LOG_FUA_FLAG;
if (discard_bio) if (discard_bio)
block->flags |= LOG_DISCARD_FLAG; block->flags |= LOG_DISCARD_FLAG;
if (meta_bio)
block->flags |= LOG_METADATA_FLAG;
block->sector = bio_to_dev_sectors(lc, bio->bi_iter.bi_sector); block->sector = bio_to_dev_sectors(lc, bio->bi_iter.bi_sector);
block->nr_sectors = bio_to_dev_sectors(lc, bio_sectors(bio)); block->nr_sectors = bio_to_dev_sectors(lc, bio_sectors(bio));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册