svn commit: r223062 - head/sys/kern
Kenneth D. Merry
ken at FreeBSD.org
Mon Jun 13 22:08:24 UTC 2011
Author: ken
Date: Mon Jun 13 22:08:24 2011
New Revision: 223062
URL: http://svn.freebsd.org/changeset/base/223062
Log:
Instead of using an atomic operation to determine whether the devstat(9)
device node has been created, pass MAKEDEV_CHECKNAME in so that the devfs
code will do the check.
Use a regular static variable as before, that's good enough to keep us from
calling into devfs most of the time.
Suggested by: kib
MFC after: 1 week
Sponsored by: Spectra Logic Corporation
Modified:
head/sys/kern/subr_devstat.c
Modified: head/sys/kern/subr_devstat.c
==============================================================================
--- head/sys/kern/subr_devstat.c Mon Jun 13 21:21:02 2011 (r223061)
+++ head/sys/kern/subr_devstat.c Mon Jun 13 22:08:24 2011 (r223062)
@@ -470,9 +470,11 @@ devstat_alloc(void)
static int once;
mtx_assert(&devstat_mutex, MA_NOTOWNED);
- if (!once && atomic_cmpset_int(&once, 0, 1)) {
- make_dev_credf(MAKEDEV_ETERNAL, &devstat_cdevsw, 0, NULL,
- UID_ROOT, GID_WHEEL, 0400, DEVSTAT_DEVICE_NAME);
+ if (!once) {
+ make_dev_credf(MAKEDEV_ETERNAL | MAKEDEV_CHECKNAME,
+ &devstat_cdevsw, 0, NULL, UID_ROOT, GID_WHEEL, 0400,
+ DEVSTAT_DEVICE_NAME);
+ once = 1;
}
spp2 = NULL;
mtx_lock(&devstat_mutex);
More information about the svn-src-head
mailing list