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