Module Name:    src
Committed By:   skrll
Date:           Mon Mar 28 09:50:40 UTC 2016

Modified Files:
        src/sys/kern: subr_autoconf.c

Log Message:
Simplify.  No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.240 -r1.241 src/sys/kern/subr_autoconf.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/subr_autoconf.c
diff -u src/sys/kern/subr_autoconf.c:1.240 src/sys/kern/subr_autoconf.c:1.241
--- src/sys/kern/subr_autoconf.c:1.240	Sun Mar 13 10:07:22 2016
+++ src/sys/kern/subr_autoconf.c	Mon Mar 28 09:50:40 2016
@@ -1,4 +1,4 @@
-/* $NetBSD: subr_autoconf.c,v 1.240 2016/03/13 10:07:22 mlelstv Exp $ */
+/* $NetBSD: subr_autoconf.c,v 1.241 2016/03/28 09:50:40 skrll Exp $ */
 
 /*
  * Copyright (c) 1996, 2000 Christopher G. Demetriou
@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: subr_autoconf.c,v 1.240 2016/03/13 10:07:22 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: subr_autoconf.c,v 1.241 2016/03/28 09:50:40 skrll Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ddb.h"
@@ -172,8 +172,6 @@ static void config_devdelete(device_t);
 static void config_devunlink(device_t, struct devicelist *);
 static void config_makeroom(int, struct cfdriver *);
 static void config_devlink(device_t);
-static void config_alldevs_unlock(int);
-static int config_alldevs_lock(void);
 static void config_alldevs_enter(struct alldevs_foray *);
 static void config_alldevs_exit(struct alldevs_foray *);
 static void config_add_attrib_dict(device_t);
@@ -1220,9 +1218,8 @@ config_makeroom(int n, struct cfdriver *
 static void
 config_devlink(device_t dev)
 {
-	int s;
 
-	s = config_alldevs_lock();
+	mutex_enter(&alldevs_mtx);
 
 	KASSERT(device_cfdriver(dev)->cd_devs[dev->dv_unit] == dev);
 
@@ -1231,7 +1228,7 @@ config_devlink(device_t dev)
 	 * readers and writers are in the list.
 	 */
 	TAILQ_INSERT_TAIL(&alldevs, dev, dv_list);
-	config_alldevs_unlock(s);
+	mutex_exit(&alldevs_mtx);
 }
 
 static void
@@ -1715,7 +1712,7 @@ config_detach(device_t dev, int flags)
 #ifdef DIAGNOSTIC
 	device_t d;
 #endif
-	int rv = 0, s;
+	int rv = 0;
 
 #ifdef DIAGNOSTIC
 	cf = dev->dv_cfdata;
@@ -1730,9 +1727,9 @@ config_detach(device_t dev, int flags)
 	ca = dev->dv_cfattach;
 	KASSERT(ca != NULL);
 
-	s = config_alldevs_lock();
+	mutex_enter(&alldevs_mtx);
 	if (dev->dv_del_gen != 0) {
-		config_alldevs_unlock(s);
+		mutex_exit(&alldevs_mtx);
 #ifdef DIAGNOSTIC
 		printf("%s: %s is already detached\n", __func__,
 		    device_xname(dev));
@@ -1740,7 +1737,7 @@ config_detach(device_t dev, int flags)
 		return ENOENT;
 	}
 	alldevs_nwrite++;
-	config_alldevs_unlock(s);
+	mutex_exit(&alldevs_mtx);
 
 	if (!detachall &&
 	    (flags & (DETACH_SHUTDOWN|DETACH_FORCE)) == DETACH_SHUTDOWN &&
@@ -2204,33 +2201,19 @@ config_twiddle_fn(void *cookie)
 	mutex_exit(&config_misc_lock);
 }
 
-static int
-config_alldevs_lock(void)
-{
-	mutex_enter(&alldevs_mtx);
-	return 0;
-}
-
 static void
 config_alldevs_enter(struct alldevs_foray *af)
 {
 	TAILQ_INIT(&af->af_garbage);
-	af->af_s = config_alldevs_lock();
+	mutex_enter(&alldevs_mtx);
 	config_collect_garbage(&af->af_garbage);
 } 
 
 static void
 config_alldevs_exit(struct alldevs_foray *af)
 {
-	config_alldevs_unlock(af->af_s);
-	config_dump_garbage(&af->af_garbage);
-}
-
-/*ARGSUSED*/
-static void
-config_alldevs_unlock(int s)
-{
 	mutex_exit(&alldevs_mtx);
+	config_dump_garbage(&af->af_garbage);
 }
 
 /*
@@ -2242,15 +2225,13 @@ device_t
 device_lookup(cfdriver_t cd, int unit)
 {
 	device_t dv;
-	int s;
 
-	s = config_alldevs_lock();
-	KASSERT(mutex_owned(&alldevs_mtx));
+	mutex_enter(&alldevs_mtx);
 	if (unit < 0 || unit >= cd->cd_ndevs)
 		dv = NULL;
 	else if ((dv = cd->cd_devs[unit]) != NULL && dv->dv_del_gen != 0)
 		dv = NULL;
-	config_alldevs_unlock(s);
+	mutex_exit(&alldevs_mtx);
 
 	return dv;
 }
@@ -2789,11 +2770,10 @@ void
 deviter_init(deviter_t *di, deviter_flags_t flags)
 {
 	device_t dv;
-	int s;
 
 	memset(di, 0, sizeof(*di));
 
-	s = config_alldevs_lock();
+	mutex_enter(&alldevs_mtx);
 	if ((flags & DEVITER_F_SHUTDOWN) != 0)
 		flags |= DEVITER_F_RW;
 
@@ -2802,7 +2782,7 @@ deviter_init(deviter_t *di, deviter_flag
 	else
 		alldevs_nread++;
 	di->di_gen = alldevs_gen++;
-	config_alldevs_unlock(s);
+	mutex_exit(&alldevs_mtx);
 
 	di->di_flags = flags;
 
@@ -2909,15 +2889,14 @@ void
 deviter_release(deviter_t *di)
 {
 	bool rw = (di->di_flags & DEVITER_F_RW) != 0;
-	int s;
 
-	s = config_alldevs_lock();
+	mutex_enter(&alldevs_mtx);
 	if (rw)
 		--alldevs_nwrite;
 	else
 		--alldevs_nread;
 	/* XXX wake a garbage-collection thread */
-	config_alldevs_unlock(s);
+	mutex_exit(&alldevs_mtx);
 }
 
 const char *

Reply via email to