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;