svn commit: r298420 - head/sys/geom

Alan Somers asomers at FreeBSD.org
Thu Apr 21 16:43:16 UTC 2016


Author: asomers
Date: Thu Apr 21 16:43:15 2016
New Revision: 298420
URL: https://svnweb.freebsd.org/changeset/base/298420

Log:
  Notify userspace listeners when geom disk attributes have changed
  
  sys/geom/geom_disk.c:
  	disk_attr_changed(): Generate a devctl event of type GEOM:<attr> for
  	every call.
  
  MFC after:	4 weeks
  Sponsored by:	Spectra Logic Corp
  Differential Revision:	https://reviews.freebsd.org/D5952

Modified:
  head/sys/geom/geom_disk.c

Modified: head/sys/geom/geom_disk.c
==============================================================================
--- head/sys/geom/geom_disk.c	Thu Apr 21 16:33:42 2016	(r298419)
+++ head/sys/geom/geom_disk.c	Thu Apr 21 16:43:15 2016	(r298420)
@@ -43,6 +43,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/kernel.h>
 #include <sys/sysctl.h>
 #include <sys/bio.h>
+#include <sys/bus.h>
 #include <sys/ctype.h>
 #include <sys/fcntl.h>
 #include <sys/malloc.h>
@@ -839,11 +840,14 @@ disk_attr_changed(struct disk *dp, const
 {
 	struct g_geom *gp;
 	struct g_provider *pp;
+	char devnamebuf[128];
 
 	gp = dp->d_geom;
 	if (gp != NULL)
 		LIST_FOREACH(pp, &gp->provider, provider)
 			(void)g_attr_changed(pp, attr, flag);
+	snprintf(devnamebuf, 128, "devname=%s%d", dp->d_name, dp->d_unit);
+	devctl_notify("GEOM", "disk", attr, devnamebuf);
 }
 
 void


More information about the svn-src-all mailing list