From: Darrick J. Wong <djwong@xxxxxxxxxx> When db is reporting on an io cursor and the cursor points to the realtime device, print that fact. Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> --- db/block.c | 2 ++ db/io.c | 11 +++++++++++ db/io.h | 1 + 3 files changed, 14 insertions(+) diff --git a/db/block.c b/db/block.c index 22930e5a287e8f..bd25cdbe193f4f 100644 --- a/db/block.c +++ b/db/block.c @@ -133,6 +133,8 @@ daddr_f( dbprintf(_("datadev daddr is %lld\n"), daddr); else if (iocur_is_extlogdev(iocur_top)) dbprintf(_("logdev daddr is %lld\n"), daddr); + else if (iocur_is_rtdev(iocur_top)) + dbprintf(_("rtdev daddr is %lld\n"), daddr); else dbprintf(_("current daddr is %lld\n"), daddr); diff --git a/db/io.c b/db/io.c index 26b8e78c2ebda8..3841c0dcb86ead 100644 --- a/db/io.c +++ b/db/io.c @@ -159,6 +159,15 @@ iocur_is_extlogdev(const struct iocur *ioc) return bp->b_target == bp->b_mount->m_logdev_targp; } +bool +iocur_is_rtdev(const struct iocur *ioc) +{ + if (!ioc->bp) + return false; + + return ioc->bp->b_target == ioc->bp->b_mount->m_rtdev_targp; +} + void print_iocur( char *tag, @@ -171,6 +180,8 @@ print_iocur( block_unit = "fsbno"; else if (iocur_is_extlogdev(ioc)) block_unit = "logbno"; + else if (iocur_is_rtdev(ioc)) + block_unit = "rtbno"; dbprintf("%s\n", tag); dbprintf(_("\tbyte offset %lld, length %d\n"), ioc->off, ioc->len); diff --git a/db/io.h b/db/io.h index cece66a1cf825a..653724e90bd270 100644 --- a/db/io.h +++ b/db/io.h @@ -60,6 +60,7 @@ extern void xfs_verify_recalc_crc(struct xfs_buf *bp); bool iocur_is_ddev(const struct iocur *ioc); bool iocur_is_extlogdev(const struct iocur *ioc); +bool iocur_is_rtdev(const struct iocur *ioc); /* * returns -1 for unchecked, 0 for bad and 1 for good