Module Name:    src
Committed By:   jmcneill
Date:           Sat Aug  9 13:34:10 UTC 2014

Modified Files:
        src/sys/dev/dtv: dtv_demux.c dtv_device.c dtv_scatter.c

Log Message:
IPL_VM -> IPL_SCHED to avoid taking kernel lock


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/sys/dev/dtv/dtv_demux.c
cvs rdiff -u -r1.10 -r1.11 src/sys/dev/dtv/dtv_device.c
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/dtv/dtv_scatter.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/dev/dtv/dtv_demux.c
diff -u src/sys/dev/dtv/dtv_demux.c:1.5 src/sys/dev/dtv/dtv_demux.c:1.6
--- src/sys/dev/dtv/dtv_demux.c:1.5	Thu Oct 17 21:23:05 2013
+++ src/sys/dev/dtv/dtv_demux.c	Sat Aug  9 13:34:10 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: dtv_demux.c,v 1.5 2013/10/17 21:23:05 christos Exp $ */
+/* $NetBSD: dtv_demux.c,v 1.6 2014/08/09 13:34:10 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2011 Jared D. McNeill <jmcne...@invisible.ca>
@@ -52,7 +52,7 @@
  */ 
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dtv_demux.c,v 1.5 2013/10/17 21:23:05 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dtv_demux.c,v 1.6 2014/08/09 13:34:10 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -305,7 +305,7 @@ dtv_demux_open(struct dtv_softc *sc, int
 	/* Default operation mode is unconfigured */
 	demux->dd_mode = DTV_DEMUX_MODE_NONE;
 	selinit(&demux->dd_sel);
-	mutex_init(&demux->dd_lock, MUTEX_DEFAULT, IPL_VM);
+	mutex_init(&demux->dd_lock, MUTEX_DEFAULT, IPL_SCHED);
 	cv_init(&demux->dd_section_cv, "dtvsec");
 
 	error = fd_allocfile(&fp, &fd);

Index: src/sys/dev/dtv/dtv_device.c
diff -u src/sys/dev/dtv/dtv_device.c:1.10 src/sys/dev/dtv/dtv_device.c:1.11
--- src/sys/dev/dtv/dtv_device.c:1.10	Fri Jul 25 08:10:36 2014
+++ src/sys/dev/dtv/dtv_device.c	Sat Aug  9 13:34:10 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: dtv_device.c,v 1.10 2014/07/25 08:10:36 dholland Exp $ */
+/* $NetBSD: dtv_device.c,v 1.11 2014/08/09 13:34:10 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2011 Jared D. McNeill <jmcne...@invisible.ca>
@@ -33,7 +33,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dtv_device.c,v 1.10 2014/07/25 08:10:36 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dtv_device.c,v 1.11 2014/08/09 13:34:10 jmcneill Exp $");
 
 #include <sys/types.h>
 #include <sys/conf.h>
@@ -106,8 +106,8 @@ dtv_attach(device_t parent, device_t sel
 	ds->ds_buf = NULL;
 	SIMPLEQ_INIT(&ds->ds_ingress);
 	SIMPLEQ_INIT(&ds->ds_egress);
-	mutex_init(&ds->ds_egress_lock, MUTEX_DEFAULT, IPL_VM);
-	mutex_init(&ds->ds_ingress_lock, MUTEX_DEFAULT, IPL_VM);
+	mutex_init(&ds->ds_egress_lock, MUTEX_DEFAULT, IPL_SCHED);
+	mutex_init(&ds->ds_ingress_lock, MUTEX_DEFAULT, IPL_SCHED);
 	cv_init(&ds->ds_sample_cv, "dtv");
 	selinit(&ds->ds_sel);
 	dtv_scatter_buf_init(&ds->ds_data);
@@ -117,7 +117,7 @@ dtv_attach(device_t parent, device_t sel
 		return;
 	}
 
-	mutex_init(&sc->sc_demux_lock, MUTEX_DEFAULT, IPL_VM);
+	mutex_init(&sc->sc_demux_lock, MUTEX_DEFAULT, IPL_SCHED);
 	TAILQ_INIT(&sc->sc_demux_list);
 	sc->sc_demux_runcnt = 0;
 

Index: src/sys/dev/dtv/dtv_scatter.c
diff -u src/sys/dev/dtv/dtv_scatter.c:1.1 src/sys/dev/dtv/dtv_scatter.c:1.2
--- src/sys/dev/dtv/dtv_scatter.c:1.1	Sat Jul  9 14:46:56 2011
+++ src/sys/dev/dtv/dtv_scatter.c	Sat Aug  9 13:34:10 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: dtv_scatter.c,v 1.1 2011/07/09 14:46:56 jmcneill Exp $ */
+/* $NetBSD: dtv_scatter.c,v 1.2 2014/08/09 13:34:10 jmcneill Exp $ */
 
 /*
  * Copyright (c) 2008 Patrick Mahoney <p...@polycrystal.org>
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dtv_scatter.c,v 1.1 2011/07/09 14:46:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dtv_scatter.c,v 1.2 2014/08/09 13:34:10 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/ioctl.h>
@@ -48,14 +48,11 @@ __KERNEL_RCSID(0, "$NetBSD: dtv_scatter.
 
 #include <dev/dtv/dtvvar.h>
 
-#define IPL_DTV		IPL_VM
-#define spldtv()	splvm()
-
 void
 dtv_scatter_buf_init(struct dtv_scatter_buf *sb)
 {
 	sb->sb_pool = pool_cache_init(PAGE_SIZE, 0, 0, 0,
-				      "dtvscatter", NULL, IPL_DTV,
+				      "dtvscatter", NULL, IPL_SCHED,
 				      NULL, NULL, NULL);
 	sb->sb_size = 0;
 	sb->sb_npages = 0;

Reply via email to