]> www.infradead.org Git - users/hch/xfsprogs.git/commitdiff
xfs_db: report the realtime device when associated with each io cursor
authorDarrick J. Wong <djwong@kernel.org>
Tue, 20 Sep 2022 20:10:35 +0000 (13:10 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Wed, 22 Nov 2023 23:03:32 +0000 (15:03 -0800)
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@kernel.org>
db/block.c
db/io.c
db/io.h

index d730c77967103af1dbf6bded0d8e0a921b7713d0..b2b5edf9385cbbb7ceef4f04afa8699be67a3347 100644 (file)
@@ -132,6 +132,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 61befb4343725671aed41dae336453e95a87c29d..580d340158684841ec3a493cbc155cd39374ed4a 100644 (file)
--- 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 bb5065f06c0d8e7cec892f11f745b8915b515e5c..8eab4cd9c9a464895e0e7e4b7cc5a280f65aaca8 100644 (file)
--- 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