Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Jul 2011 20:06:49 +0000 (UTC)
From:      "Justin T. Gibbs" <gibbs@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r224200 - in projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common: fs/zfs sys/sysevent
Message-ID:  <201107182006.p6IK6nHQ037460@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gibbs
Date: Mon Jul 18 20:06:49 2011
New Revision: 224200
URL: http://svn.freebsd.org/changeset/base/224200

Log:
  sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c:
  sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h:
  	Emit "dev_path" instead of "phys_path" in autoexpand
  	events.  The "dev_path" already is a devfs path to
  	the device and this avoids having to convert the
  	physical path information into a devfs path in yet
  	another location.
  
  Sponsored by:	Spectra Logic Corporation

Modified:
  projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h

Modified: projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
==============================================================================
--- projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Mon Jul 18 20:06:15 2011	(r224199)
+++ projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Mon Jul 18 20:06:49 2011	(r224200)
@@ -5051,7 +5051,6 @@ spa_async_autoexpand(spa_t *spa, vdev_t 
 {
 	sysevent_id_t eid;
 	nvlist_t *attr;
-	char *physpath;
 
 	if (!spa->spa_autoexpand)
 		return;
@@ -5061,20 +5060,16 @@ spa_async_autoexpand(spa_t *spa, vdev_t 
 		spa_async_autoexpand(spa, cvd);
 	}
 
-	if (!vd->vdev_ops->vdev_op_leaf || vd->vdev_physpath == NULL)
+	if (!vd->vdev_ops->vdev_op_leaf || vd->vdev_path == NULL)
 		return;
 
-	physpath = kmem_zalloc(MAXPATHLEN, KM_SLEEP);
-	(void) snprintf(physpath, MAXPATHLEN, "/devices%s", vd->vdev_physpath);
-
 	VERIFY(nvlist_alloc(&attr, NV_UNIQUE_NAME, KM_SLEEP) == 0);
-	VERIFY(nvlist_add_string(attr, DEV_PHYS_PATH, physpath) == 0);
+	VERIFY(nvlist_add_string(attr, DEV_PATH, vd->vdev_path) == 0);
 
 	(void) ddi_log_sysevent(zfs_dip, SUNW_VENDOR, EC_DEV_STATUS,
 	    ESC_ZFS_VDEV_AUTOEXPAND, attr, &eid, DDI_SLEEP);
 
 	nvlist_free(attr);
-	kmem_free(physpath, MAXPATHLEN);
 }
 
 static void

Modified: projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h
==============================================================================
--- projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h	Mon Jul 18 20:06:15 2011	(r224199)
+++ projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h	Mon Jul 18 20:06:49 2011	(r224200)
@@ -236,6 +236,7 @@ extern "C" {
 
 #define	EV_VERSION		"version"
 #define	DEV_PHYS_PATH		"phys_path"
+#define	DEV_PATH		"dev_path"
 #define	DEV_NAME		"dev_name"
 #define	DEV_DRIVER_NAME		"driver_name"
 #define	DEV_INSTANCE		"instance"



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