Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Oct 2012 19:42:06 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r241291 - head/sys/boot/zfs
Message-ID:  <201210061942.q96Jg63w027564@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Sat Oct  6 19:42:05 2012
New Revision: 241291
URL: http://svn.freebsd.org/changeset/base/241291

Log:
  zfs boot spa_status: print bootfs for each reported pool
  
  MFC after:	9 days

Modified:
  head/sys/boot/zfs/zfsimpl.c

Modified: head/sys/boot/zfs/zfsimpl.c
==============================================================================
--- head/sys/boot/zfs/zfsimpl.c	Sat Oct  6 19:41:11 2012	(r241290)
+++ head/sys/boot/zfs/zfsimpl.c	Sat Oct  6 19:42:05 2012	(r241291)
@@ -71,6 +71,8 @@ static char *zfs_temp_buf, *zfs_temp_end
 #define TEMP_SIZE	(1024 * 1024)
 
 static int zio_read(const spa_t *spa, const blkptr_t *bp, void *buf);
+static int zfs_get_root(const spa_t *spa, uint64_t *objid);
+static int zfs_rlookup(const spa_t *spa, uint64_t objnum, char *result);
 
 static void
 zfs_init(void)
@@ -784,11 +786,20 @@ vdev_status(vdev_t *vdev, int indent)
 static void
 spa_status(spa_t *spa)
 {
+	static char bootfs[ZFS_MAXNAMELEN];
+	uint64_t rootid;
 	vdev_t *vdev;
 	int good_kids, bad_kids, degraded_kids;
 	vdev_state_t state;
 
 	pager_printf("  pool: %s\n", spa->spa_name);
+	if (zfs_get_root(spa, &rootid) == 0 &&
+	    zfs_rlookup(spa, rootid, bootfs) == 0) {
+		if (bootfs[0] == '\0')
+			pager_printf("bootfs: %s\n", spa->spa_name);
+		else
+			pager_printf("bootfs: %s/%s\n", spa->spa_name, bootfs);
+	}
 	pager_printf("config:\n\n");
 	pager_printf(STATUS_FORMAT, "NAME", "STATE");
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210061942.q96Jg63w027564>