Module Name:    src
Committed By:   skrll
Date:           Tue Mar 18 15:44:37 UTC 2014

Modified Files:
        src/sys/dev: cgd.c cgdvar.h

Log Message:
Remove a simplelock and replace with a kmutex


To generate a diff of this commit:
cvs rdiff -u -r1.84 -r1.85 src/sys/dev/cgd.c
cvs rdiff -u -r1.16 -r1.17 src/sys/dev/cgdvar.h

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

Modified files:

Index: src/sys/dev/cgd.c
diff -u src/sys/dev/cgd.c:1.84 src/sys/dev/cgd.c:1.85
--- src/sys/dev/cgd.c:1.84	Sun Mar 16 05:20:26 2014
+++ src/sys/dev/cgd.c	Tue Mar 18 15:44:37 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: cgd.c,v 1.84 2014/03/16 05:20:26 dholland Exp $ */
+/* $NetBSD: cgd.c,v 1.85 2014/03/18 15:44:37 skrll Exp $ */
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cgd.c,v 1.84 2014/03/16 05:20:26 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cgd.c,v 1.85 2014/03/18 15:44:37 skrll Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -200,7 +200,7 @@ cgd_attach(device_t parent, device_t sel
 {
 	struct cgd_softc *sc = device_private(self);
 
-	simple_lock_init(&sc->sc_slock);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_BIO);
 	dk_sc_init(&sc->sc_dksc, device_xname(self));
 	sc->sc_dksc.sc_dev = self;
 	disk_init(&sc->sc_dksc.sc_dkdev, sc->sc_dksc.sc_xname, &cgddkdriver);
@@ -354,12 +354,12 @@ cgd_getdata(struct dk_softc *dksc, unsig
 	struct	cgd_softc *cs = (struct cgd_softc *)dksc;
 	void *	data = NULL;
 
-	simple_lock(&cs->sc_slock);
+	mutex_enter(&cs->sc_lock);
 	if (cs->sc_data_used == 0) {
 		cs->sc_data_used = 1;
 		data = cs->sc_data;
 	}
-	simple_unlock(&cs->sc_slock);
+	mutex_exit(&cs->sc_lock);
 
 	if (data)
 		return data;
@@ -373,9 +373,9 @@ cgd_putdata(struct dk_softc *dksc, void 
 	struct	cgd_softc *cs = (struct cgd_softc *)dksc;
 
 	if (data == cs->sc_data) {
-		simple_lock(&cs->sc_slock);
+		mutex_enter(&cs->sc_lock);
 		cs->sc_data_used = 0;
-		simple_unlock(&cs->sc_slock);
+		mutex_exit(&cs->sc_lock);
 	} else {
 		free(data, M_DEVBUF);
 	}

Index: src/sys/dev/cgdvar.h
diff -u src/sys/dev/cgdvar.h:1.16 src/sys/dev/cgdvar.h:1.17
--- src/sys/dev/cgdvar.h:1.16	Wed Dec  5 02:23:20 2012
+++ src/sys/dev/cgdvar.h	Tue Mar 18 15:44:37 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: cgdvar.h,v 1.16 2012/12/05 02:23:20 christos Exp $ */
+/* $NetBSD: cgdvar.h,v 1.17 2014/03/18 15:44:37 skrll Exp $ */
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -32,8 +32,6 @@
 #ifndef _DEV_CGDVAR_H_
 #define	_DEV_CGDVAR_H_
 
-#include <sys/simplelock.h>
-
 /* ioctl(2) code: used by CGDIOCSET and CGDIOCCLR */
 struct cgd_ioctl {
 	const char	*ci_disk;
@@ -90,7 +88,7 @@ struct cgd_softc {
 	size_t			 sc_tpathlen;	/* length of prior string */
 	struct cryptdata	 sc_cdata;	/* crypto data */
 	const struct cryptfuncs	*sc_cfuncs;	/* encryption functions */
-	struct simplelock	 sc_slock;	/* our lock */
+	kmutex_t		 sc_lock;	/* our lock */
 };
 #endif
 

Reply via email to