changeset 10608:3ce7fe6573e8

6874501 Need a way to limit the message from ndmp_door_server when running ndmpd in debug mode. 6851103 System logs reported daemon.error I/O error failed to send command 6867239 ndmpd backs up ZFS properties invalid for filesystems
author Reza Sabdar <Reza.Sabdar@Sun.COM>
date Tue, 22 Sep 2009 13:34:03 -0700
parents da3cc66100c3
children f1cdb59c41b4
files usr/src/cmd/ndmpd/ndmp/ndmpd_door.c usr/src/cmd/ndmpd/ndmp/ndmpd_util.c usr/src/cmd/ndmpd/tlm/tlm_backup_reader.c
diffstat 3 files changed, 11 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/ndmpd/ndmp/ndmpd_door.c	Tue Sep 22 09:27:56 2009 -0700
+++ b/usr/src/cmd/ndmpd/ndmp/ndmpd_door.c	Tue Sep 22 13:34:03 2009 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -182,7 +182,8 @@
 		return;
 	}
 
-	NDMP_LOG(LOG_DEBUG, "ndmp_door_server: req_type=%d", req_type);
+	if (req_type != NDMP_GET_STAT)
+		NDMP_LOG(LOG_DEBUG, "ndmp_door_server: req_type=%d", req_type);
 
 	switch (req_type) {
 	case NDMP_GET_DOOR_STATUS: {
--- a/usr/src/cmd/ndmpd/ndmp/ndmpd_util.c	Tue Sep 22 09:27:56 2009 -0700
+++ b/usr/src/cmd/ndmpd/ndmp/ndmpd_util.c	Tue Sep 22 13:34:03 2009 -0700
@@ -1409,7 +1409,9 @@
 	}
 
 	if (ioctl(fd, USCSICMD, &cmd) < 0) {
-		NDMP_LOG(LOG_ERR, "Failed to send command to device: %m");
+		if (errno != EIO && errno != 0)
+			NDMP_LOG(LOG_ERR,
+			    "Failed to send command to device: %m");
 		NDMP_LOG(LOG_DEBUG, "ioctl(USCSICMD) error: %m");
 		if (cmd.uscsi_status == 0)
 			reply.error = NDMP_IO_ERR;
--- a/usr/src/cmd/ndmpd/tlm/tlm_backup_reader.c	Tue Sep 22 09:27:56 2009 -0700
+++ b/usr/src/cmd/ndmpd/tlm/tlm_backup_reader.c	Tue Sep 22 13:34:03 2009 -0700
@@ -1191,11 +1191,13 @@
 		return (ZPROP_INVAL);
 
 	mhp = (ndmp_metadata_header_t *)pp;
+
+	if (zfs_prop_get(mhp->nh_handle, prop, buf, sizeof (buf),
+	    &stype, sbuf, sizeof (sbuf), B_TRUE) != 0)
+		return (ZPROP_CONT);
+
 	mpp = &mhp->nh_property[mhp->nh_count++];
-
 	(void) strlcpy(mpp->mp_name, zfs_prop_to_name(prop), NAME_MAX);
-	(void) zfs_prop_get(mhp->nh_handle,
-	    prop, buf, sizeof (buf), &stype, sbuf, sizeof (sbuf), B_TRUE);
 	(void) strlcpy(mpp->mp_value, buf, NAME_MAX);
 
 	switch (stype) {