svn commit: r288153 - head/sys/geom
Conrad E. Meyer
cem at FreeBSD.org
Wed Sep 23 21:08:53 UTC 2015
Author: cem
Date: Wed Sep 23 21:08:52 2015
New Revision: 288153
URL: https://svnweb.freebsd.org/changeset/base/288153
Log:
geom_dev: Use kenv 'dumpdev' in the same way as rc/etc.d/dumpon
Skip a /dev/ prefix, if one is present, when checking for matching
device names for dump.
Suggested by: avg
Reviewed by: markj
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D3725
Modified:
head/sys/geom/geom_dev.c
Modified: head/sys/geom/geom_dev.c
==============================================================================
--- head/sys/geom/geom_dev.c Wed Sep 23 20:46:23 2015 (r288152)
+++ head/sys/geom/geom_dev.c Wed Sep 23 21:08:52 2015 (r288153)
@@ -124,6 +124,7 @@ g_dev_fini(struct g_class *mp)
{
freeenv(dumpdev);
+ dumpdev = NULL;
}
static int
@@ -152,10 +153,16 @@ g_dev_setdumpdev(struct cdev *dev, struc
static void
init_dumpdev(struct cdev *dev)
{
+ const char *devprefix = "/dev/", *devname;
+ size_t len;
if (dumpdev == NULL)
return;
- if (strcmp(devtoname(dev), dumpdev) != 0)
+ len = strlen(devprefix);
+ devname = devtoname(dev);
+ if (strcmp(devname, dumpdev) != 0 &&
+ (strncmp(dumpdev, devprefix, len) != 0 ||
+ strcmp(devname, dumpdev + len) != 0))
return;
if (g_dev_setdumpdev(dev, curthread) == 0) {
freeenv(dumpdev);
More information about the svn-src-all
mailing list