[PATCH 1/3] libxfs: actually set m_fsname

Darrick J. Wong
2024-06-03T18:51:32Z

Set the name of the filesystem before we actually start using it for
creating xfiles. This leads to nice(r) output from /proc/maps such as:

7fcd0a44f000-7fcd0a450000 rw-s 021f6000 00:01 3612684 /memfd:xfs_repair (/dev/sda): AG 0 rmap records (deleted)

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
---
libxfs/init.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/libxfs/init.c b/libxfs/init.c
index 6ac9d6824..c9c61ac18 100644
--- a/libxfs/init.c
+++ b/libxfs/init.c
@@ -643,6 +643,11 @@ libxfs_mount(
xfs_set_reporting_corruption(mp);
libxfs_buftarg_init(mp, xi);

+ if (xi->data.name)
+ mp->m_fsname = strdup(xi->data.name);
+ else
+ mp->m_fsname = NULL;
+
mp->m_finobt_nores = true;
xfs_set_inode32(mp);
mp->m_sb = *sb;
@@ -903,6 +908,9 @@ libxfs_umount(
kmem_free(mp->m_attr_geo);
kmem_free(mp->m_dir_geo);

+ free(mp->m_fsname);
+ mp->m_fsname = NULL;
+
kmem_free(mp->m_rtdev_targp);
if (mp->m_logdev_targp != mp->m_ddev_targp)
kmem_free(mp->m_logdev_targp);