changeset 4070:4390ea390a1e

6386594 zdb message should be clearer when failing for lack of permissions
author mc142369
date Thu, 19 Apr 2007 15:50:31 -0700
parents ad1037792ded
children d92c806927ed
files usr/src/cmd/zdb/zdb.c usr/src/uts/common/fs/zfs/spa.c usr/src/uts/common/fs/zfs/vdev.c
diffstat 3 files changed, 11 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/zdb/zdb.c	Thu Apr 19 15:01:50 2007 -0700
+++ b/usr/src/cmd/zdb/zdb.c	Thu Apr 19 15:50:31 2007 -0700
@@ -932,11 +932,11 @@
 
 	if (doi.doi_checksum != ZIO_CHECKSUM_INHERIT || verbosity >= 6)
 		(void) snprintf(aux + strlen(aux), sizeof (aux), " (K=%s)",
-		    zio_checksum_table[doi.doi_checksum].ci_name);
+		zio_checksum_table[doi.doi_checksum].ci_name);
 
 	if (doi.doi_compress != ZIO_COMPRESS_INHERIT || verbosity >= 6)
 		(void) snprintf(aux + strlen(aux), sizeof (aux), " (Z=%s)",
-		    zio_compress_table[doi.doi_compress].ci_name);
+		zio_compress_table[doi.doi_compress].ci_name);
 
 	(void) printf("%10lld  %3u  %5s  %5s  %5s  %5s  %s%s\n",
 	    (u_longlong_t)object, doi.doi_indirection, iblk, dblk, lsize,
@@ -1441,7 +1441,7 @@
 		    (u_longlong_t)zb->zb_objset,
 		    (u_longlong_t)zb->zb_object,
 		    (u_longlong_t)blkid2offset(bc->bc_dnode,
-		    zb->zb_level, zb->zb_blkid),
+			zb->zb_level, zb->zb_blkid),
 		    blkbuf);
 	}
 
@@ -1951,8 +1951,8 @@
 			spa_close(spa, (void *)zdb_read_block);
 		error = spa_open(spa_name, spap, (void *)zdb_read_block);
 		if (error)
-			fatal("Failed to open pool '%s': errno = %d\n",
-			    spa_name, error);
+			fatal("Failed to open pool '%s': %s",
+			    spa_name, strerror(error));
 		spa = *spap;
 	}
 
@@ -2156,7 +2156,7 @@
 	}
 
 	if (error)
-		fatal("can't open %s: error %d", argv[0], error);
+		fatal("can't open %s: %s", argv[0], strerror(error));
 
 	argv++;
 	if (--argc > 0) {
--- a/usr/src/uts/common/fs/zfs/spa.c	Thu Apr 19 15:01:50 2007 -0700
+++ b/usr/src/uts/common/fs/zfs/spa.c	Thu Apr 19 15:50:31 2007 -0700
@@ -484,10 +484,9 @@
 	/*
 	 * Try to open all vdevs, loading each label in the process.
 	 */
-	if (vdev_open(rvd) != 0) {
-		error = ENXIO;
+	error = vdev_open(rvd);
+	if (error != 0)
 		goto out;
-	}
 
 	/*
 	 * Validate the labels for all leaf vdevs.  We need to grab the config
@@ -498,10 +497,8 @@
 	error = vdev_validate(rvd);
 	spa_config_exit(spa, FTAG);
 
-	if (error != 0) {
-		error = EBADF;
+	if (error != 0)
 		goto out;
-	}
 
 	if (rvd->vdev_state <= VDEV_STATE_CANT_OPEN) {
 		error = ENXIO;
--- a/usr/src/uts/common/fs/zfs/vdev.c	Thu Apr 19 15:01:50 2007 -0700
+++ b/usr/src/uts/common/fs/zfs/vdev.c	Thu Apr 19 15:50:31 2007 -0700
@@ -924,7 +924,7 @@
 
 	for (c = 0; c < vd->vdev_children; c++)
 		if (vdev_validate(vd->vdev_child[c]) != 0)
-			return (-1);
+			return (EBADF);
 
 	/*
 	 * If the device has already failed, or was marked offline, don't do
@@ -967,7 +967,7 @@
 
 		if (spa->spa_load_state == SPA_LOAD_OPEN &&
 		    state != POOL_STATE_ACTIVE)
-			return (-1);
+			return (EBADF);
 	}
 
 	/*