PERFORCE change 56016 for review
Robert Watson
rwatson at FreeBSD.org
Mon Jun 28 12:40:03 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=56016
Change 56016 by rwatson at rwatson_tislabs on 2004/06/28 19:39:39
Integrate netperf_socket. Attempt to recover from warner.
Affected files ...
.. //depot/projects/netperf_socket/sys/arm/arm/sys_machdep.c#2 integrate
.. //depot/projects/netperf_socket/sys/conf/files#34 integrate
.. //depot/projects/netperf_socket/sys/dev/cx/if_cx.c#11 integrate
.. //depot/projects/netperf_socket/sys/dev/cy/cy.c#10 integrate
.. //depot/projects/netperf_socket/sys/dev/ex/if_ex_isa.c#3 integrate
.. //depot/projects/netperf_socket/sys/dev/sio/sio.c#15 integrate
.. //depot/projects/netperf_socket/sys/i386/i386/mem.c#7 integrate
.. //depot/projects/netperf_socket/sys/i386/include/proc.h#4 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_condvar.c#5 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_idle.c#3 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_synch.c#9 integrate
.. //depot/projects/netperf_socket/sys/kern/subr_sleepqueue.c#7 integrate
.. //depot/projects/netperf_socket/sys/kern/subr_taskqueue.c#3 integrate
.. //depot/projects/netperf_socket/sys/modules/netgraph/bluetooth/ubt/Makefile#2 integrate
.. //depot/projects/netperf_socket/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 integrate
.. //depot/projects/netperf_socket/sys/net/if_spppsubr.c#8 integrate
.. //depot/projects/netperf_socket/sys/pc98/pc98/sio.c#13 integrate
.. //depot/projects/netperf_socket/sys/sys/interrupt.h#2 integrate
.. //depot/projects/netperf_socket/sys/sys/sleepqueue.h#3 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_map.c#10 integrate
Differences ...
==== //depot/projects/netperf_socket/sys/arm/arm/sys_machdep.c#2 (text+ko) ====
@@ -34,21 +34,12 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.1 2004/05/14 11:46:42 cognet Exp $");
-
-#include "opt_kstack_pages.h"
-#include "opt_mac.h"
+__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.2 2004/06/28 11:35:05 cognet Exp $");
#include <sys/param.h>
#include <sys/systm.h>
-#include <sys/lock.h>
-#include <sys/mac.h>
-#include <sys/malloc.h>
-#include <sys/mutex.h>
#include <sys/proc.h>
-#include <sys/smp.h>
#include <sys/sysproto.h>
-#include <sys/user.h>
#include <sys/syscall.h>
#include <sys/sysent.h>
==== //depot/projects/netperf_socket/sys/conf/files#34 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.913 2004/06/27 20:16:56 imp Exp $
+# $FreeBSD: src/sys/conf/files,v 1.914 2004/06/28 16:22:20 imp Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -40,7 +40,7 @@
compile-with "CC=${CC} AWK=${AWK} sh $S/tools/emu10k1-mkalsa.sh $S/gnu/dev/sound/pci/emu10k1-alsa.h emu10k1-alsa%diked.h" \
no-obj no-implicit-rule before-depend \
clean "emu10k1-alsa%diked.h"
-miidevs.h optional mii \
+miidevs.h optional miibus \
dependency "$S/tools/miidevs2h.awk $S/dev/mii/miidevs" \
compile-with "${AWK} -f $S/tools/miidevs2h.awk $S/dev/mii/miidevs" \
no-obj no-implicit-rule before-depend \
==== //depot/projects/netperf_socket/sys/dev/cx/if_cx.c#11 (text+ko) ====
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.24 2004/06/25 19:22:04 julian Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.25 2004/06/28 16:17:10 jhb Exp $");
#include <sys/param.h>
@@ -2873,7 +2873,7 @@
#if __FreeBSD_version < 500000
register_swi (SWI_TTY, cx_softintr);
#else
- swi_add(&tty_ithd, "tty:cx", cx_softintr, NULL, SWI_TTY, 0,
+ swi_add(&tty_ithd, "cx", cx_softintr, NULL, SWI_TTY, 0,
&cx_fast_ih);
#endif
break;
==== //depot/projects/netperf_socket/sys/dev/cy/cy.c#10 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cy/cy.c,v 1.156 2004/06/26 09:20:05 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cy/cy.c,v 1.157 2004/06/28 16:17:10 jhb Exp $");
#include "opt_compat.h"
@@ -554,9 +554,9 @@
splx(s);
if (sio_fast_ih == NULL) {
- swi_add(&tty_ithd, "tty:cy", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&tty_ithd, "cy", siopoll, NULL, SWI_TTY, 0,
&sio_fast_ih);
- swi_add(&clk_ithd, "tty:cy", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&clk_ithd, "cy", siopoll, NULL, SWI_CLOCK, 0,
&sio_slow_ih);
}
minorbase = UNIT_TO_MINOR(unit);
==== //depot/projects/netperf_socket/sys/dev/ex/if_ex_isa.c#3 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ex/if_ex_isa.c,v 1.8 2004/06/27 13:10:20 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ex/if_ex_isa.c,v 1.10 2004/06/28 16:38:53 imp Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -148,7 +148,7 @@
}
if (bootverbose)
- printf("ex: Found card at 0x%03x!\n", ioport);
+ printf("ex: Found card at 0x%03lx!\n", (unsigned long)ioport);
/* Board in PnP mode */
if (ex_eeprom_read(&sc, EE_W0) & EE_W0_PNP) {
@@ -156,7 +156,7 @@
CSR_WRITE_1(&sc, CMD_REG, Reset_CMD);
DELAY(500);
if (bootverbose)
- printf("ex: card at 0x%03x in PnP mode!\n", ioport);
+ printf("ex: card at 0x%03lx in PnP mode!\n", (unsigned long)ioport);
bus_release_resource(parent, SYS_RES_IOPORT, rid, res);
continue;
}
@@ -186,7 +186,8 @@
bus_set_resource(child, SYS_RES_IRQ, 0, irq, 1);
bus_set_resource(child, SYS_RES_IOPORT, 0, ioport, EX_IOSIZE);
if (bootverbose)
- printf("ex: Adding board at 0x%03x, irq %d\n", ioport, irq);
+ printf("ex: Adding board at 0x%03lx, irq %d\n",
+ (unsigned long)ioport, irq);
}
return;
@@ -221,12 +222,12 @@
iobase = bus_get_resource_start(dev, SYS_RES_IOPORT, 0);
if (!ex_look_for_card(sc)) {
if (bootverbose)
- printf("ex: no card found at 0x%3x.\n", iobase);
+ printf("ex: no card found at 0x%03lx.\n", (unsigned long)iobase);
error = ENXIO;
goto bad;
}
if (bootverbose)
- printf("ex: ex_isa_probe() found card at 0x%03x\n", iobase);
+ printf("ex: ex_isa_probe() found card at 0x%03lx\n", (unsigned long)iobase);
/*
* Reset the card.
==== //depot/projects/netperf_socket/sys/dev/sio/sio.c#15 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/sio/sio.c,v 1.444 2004/06/27 11:29:54 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/sio/sio.c,v 1.445 2004/06/28 16:17:10 jhb Exp $");
#include "opt_comconsole.h"
#include "opt_compat.h"
@@ -1132,9 +1132,9 @@
printf("\n");
if (sio_fast_ih == NULL) {
- swi_add(&tty_ithd, "tty:sio", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&tty_ithd, "sio", siopoll, NULL, SWI_TTY, 0,
&sio_fast_ih);
- swi_add(&clk_ithd, "tty:sio", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&clk_ithd, "sio", siopoll, NULL, SWI_CLOCK, 0,
&sio_slow_ih);
}
minorbase = UNIT_TO_MINOR(unit);
==== //depot/projects/netperf_socket/sys/i386/i386/mem.c#7 (text+ko) ====
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/i386/mem.c,v 1.112 2004/06/28 03:16:32 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/i386/mem.c,v 1.113 2004/06/28 05:37:22 imp Exp $");
/*
* Memory special file
@@ -98,7 +98,6 @@
{
switch (minor(dev)) {
case 14:
- td->td_proc->p_md.md_iopl = 0;
td->td_frame->tf_eflags &= ~PSL_IOPL;
}
return (0);
@@ -126,7 +125,6 @@
if (error != 0)
return (error);
td->td_frame->tf_eflags |= PSL_IOPL;
- td->td_proc->p_md.md_iopl = PSL_IOPL;
break;
}
return (0);
==== //depot/projects/netperf_socket/sys/i386/include/proc.h#4 (text+ko) ====
@@ -27,7 +27,7 @@
* SUCH DAMAGE.
*
* from: @(#)proc.h 7.1 (Berkeley) 5/15/91
- * $FreeBSD: src/sys/i386/include/proc.h,v 1.22 2004/06/28 03:16:32 imp Exp $
+ * $FreeBSD: src/sys/i386/include/proc.h,v 1.23 2004/06/28 05:37:22 imp Exp $
*/
#ifndef _MACHINE_PROC_H_
@@ -52,7 +52,6 @@
struct mdproc {
struct proc_ldt *md_ldt; /* (j) per-process ldt */
- uint32_t md_iopl; /* process' iopl level */
};
#ifdef _KERNEL
==== //depot/projects/netperf_socket/sys/kern/kern_condvar.c#5 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_condvar.c,v 1.48 2004/04/06 19:17:46 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_condvar.c,v 1.49 2004/06/28 18:57:06 jhb Exp $");
#include "opt_ktrace.h"
@@ -250,7 +250,7 @@
sleepq_add(sq, cvp, mp, cvp->cv_description, SLEEPQ_CONDVAR);
sleepq_set_timeout(cvp, timo);
- rval = sleepq_timedwait(cvp, 0);
+ rval = sleepq_timedwait(cvp);
#ifdef KTRACE
if (KTRPOINT(td, KTR_CSW))
==== //depot/projects/netperf_socket/sys/kern/kern_idle.c#3 (text+ko) ====
@@ -4,7 +4,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_idle.c,v 1.37 2004/02/05 21:01:37 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_idle.c,v 1.38 2004/06/28 16:19:50 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -60,6 +60,7 @@
td = FIRST_THREAD_IN_PROC(p);
td->td_state = TDS_CAN_RUN;
td->td_flags |= TDF_IDLETD;
+ td->td_priority = PRI_MAX_IDLE;
mtx_unlock_spin(&sched_lock);
PROC_UNLOCK(p);
#ifdef SMP
==== //depot/projects/netperf_socket/sys/kern/kern_synch.c#9 (text+ko) ====
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_synch.c,v 1.249 2004/06/07 09:35:00 tjr Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_synch.c,v 1.250 2004/06/28 18:57:06 jhb Exp $");
#include "opt_ddb.h"
#include "opt_ktrace.h"
@@ -236,7 +236,7 @@
if (timo && catch)
rval = sleepq_timedwait_sig(ident, sig != 0);
else if (timo)
- rval = sleepq_timedwait(ident, sig != 0);
+ rval = sleepq_timedwait(ident);
else if (catch)
rval = sleepq_wait_sig(ident);
else {
==== //depot/projects/netperf_socket/sys/kern/subr_sleepqueue.c#7 (text+ko) ====
@@ -60,7 +60,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.7 2004/05/14 20:51:42 bde Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.8 2004/06/28 18:57:06 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -499,17 +499,14 @@
* or it times out while waiting.
*/
int
-sleepq_timedwait(void *wchan, int signal_caught)
+sleepq_timedwait(void *wchan)
{
int rval;
sleepq_switch(wchan);
rval = sleepq_check_timeout();
mtx_unlock_spin(&sched_lock);
- if (signal_caught)
- return (0);
- else
- return (rval);
+ return (rval);
}
/*
==== //depot/projects/netperf_socket/sys/kern/subr_taskqueue.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/subr_taskqueue.c,v 1.22 2004/02/19 22:03:52 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/subr_taskqueue.c,v 1.23 2004/06/28 16:28:23 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -52,7 +52,6 @@
const char *tq_name;
taskqueue_enqueue_fn tq_enqueue;
void *tq_context;
- int tq_draining;
struct mtx tq_mutex;
};
@@ -82,7 +81,6 @@
queue->tq_name = name;
queue->tq_enqueue = enqueue;
queue->tq_context = context;
- queue->tq_draining = 0;
mtx_init(&queue->tq_mutex, "taskqueue", NULL, MTX_DEF);
mtx_lock(&taskqueue_queues_mutex);
@@ -96,17 +94,12 @@
taskqueue_free(struct taskqueue *queue)
{
- mtx_lock(&queue->tq_mutex);
- KASSERT(queue->tq_draining == 0, ("free'ing a draining taskqueue"));
- queue->tq_draining = 1;
- mtx_unlock(&queue->tq_mutex);
-
- taskqueue_run(queue);
-
mtx_lock(&taskqueue_queues_mutex);
STAILQ_REMOVE(&taskqueue_queues, queue, taskqueue, tq_link);
mtx_unlock(&taskqueue_queues_mutex);
+ mtx_lock(&queue->tq_mutex);
+ taskqueue_run(queue);
mtx_destroy(&queue->tq_mutex);
free(queue, M_TASKQUEUE);
}
@@ -121,12 +114,11 @@
mtx_lock(&taskqueue_queues_mutex);
STAILQ_FOREACH(queue, &taskqueue_queues, tq_link) {
- mtx_lock(&queue->tq_mutex);
if (strcmp(queue->tq_name, name) == 0) {
+ mtx_lock(&queue->tq_mutex);
mtx_unlock(&taskqueue_queues_mutex);
return queue;
}
- mtx_unlock(&queue->tq_mutex);
}
mtx_unlock(&taskqueue_queues_mutex);
return NULL;
@@ -141,14 +133,6 @@
mtx_lock(&queue->tq_mutex);
/*
- * Don't allow new tasks on a queue which is being freed.
- */
- if (queue->tq_draining) {
- mtx_unlock(&queue->tq_mutex);
- return EPIPE;
- }
-
- /*
* Count multiple enqueues.
*/
if (task->ta_pending) {
@@ -189,9 +173,11 @@
taskqueue_run(struct taskqueue *queue)
{
struct task *task;
- int pending;
+ int owned, pending;
- mtx_lock(&queue->tq_mutex);
+ owned = mtx_owned(&queue->tq_mutex);
+ if (!owned)
+ mtx_lock(&queue->tq_mutex);
while (STAILQ_FIRST(&queue->tq_queue)) {
/*
* Carefully remove the first task from the queue and
@@ -207,7 +193,13 @@
mtx_lock(&queue->tq_mutex);
}
- mtx_unlock(&queue->tq_mutex);
+
+ /*
+ * For compatibility, unlock on return if the queue was not locked
+ * on entry, although this opens a race window.
+ */
+ if (!owned)
+ mtx_unlock(&queue->tq_mutex);
}
static void
@@ -235,21 +227,21 @@
}
static void
-taskqueue_thread_loop(void *arg)
+taskqueue_thread_loop(void *dummy)
{
+
+ mtx_lock(&taskqueue_thread->tq_mutex);
for (;;) {
- mtx_lock(&taskqueue_thread->tq_mutex);
- while (STAILQ_EMPTY(&taskqueue_thread->tq_queue))
- msleep(taskqueue_thread, &taskqueue_thread->tq_mutex,
- PWAIT, "-", 0);
- mtx_unlock(&taskqueue_thread->tq_mutex);
taskqueue_run(taskqueue_thread);
+ msleep(taskqueue_thread, &taskqueue_thread->tq_mutex, PWAIT,
+ "-", 0);
}
}
static void
taskqueue_thread_enqueue(void *context)
{
+
mtx_assert(&taskqueue_thread->tq_mutex, MA_OWNED);
wakeup(taskqueue_thread);
}
@@ -275,14 +267,6 @@
mtx_lock_spin(&queue->tq_mutex);
/*
- * Don't allow new tasks on a queue which is being freed.
- */
- if (queue->tq_draining) {
- mtx_unlock_spin(&queue->tq_mutex);
- return EPIPE;
- }
-
- /*
* Count multiple enqueues.
*/
if (task->ta_pending) {
@@ -362,8 +346,9 @@
static void
taskqueue_define_fast(void *arg)
{
- taskqueue_fast = malloc(sizeof(struct taskqueue),
- M_TASKQUEUE, M_NOWAIT | M_ZERO);
+
+ taskqueue_fast = malloc(sizeof(struct taskqueue), M_TASKQUEUE,
+ M_NOWAIT | M_ZERO);
if (!taskqueue_fast) {
printf("%s: Unable to allocate fast task queue!\n", __func__);
return;
@@ -382,4 +367,4 @@
NULL, SWI_TQ_FAST, 0, &taskqueue_fast_ih);
}
SYSINIT(taskqueue_fast, SI_SUB_CONFIGURE, SI_ORDER_SECOND,
- taskqueue_define_fast, NULL);
+ taskqueue_define_fast, NULL);
==== //depot/projects/netperf_socket/sys/modules/netgraph/bluetooth/ubt/Makefile#2 (text+ko) ====
@@ -1,5 +1,5 @@
# $Id: Makefile,v 1.2 2003/03/22 23:44:34 max Exp $
-# $FreeBSD: src/sys/modules/netgraph/bluetooth/ubt/Makefile,v 1.5 2004/01/13 11:28:49 ru Exp $
+# $FreeBSD: src/sys/modules/netgraph/bluetooth/ubt/Makefile,v 1.6 2004/06/28 19:06:30 imp Exp $
.PATH: ${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubt
@@ -7,7 +7,7 @@
-I${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubt
KMOD= ng_ubt
-SRCS= ng_ubt.c bus_if.h device_if.h vnode_if.h opt_usb.h
+SRCS= ng_ubt.c bus_if.h device_if.h vnode_if.h opt_usb.h usbdevs.h
.include <bsd.kmod.mk>
==== //depot/projects/netperf_socket/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 (text+ko) ====
@@ -1,5 +1,5 @@
# $Id: Makefile,v 1.1 2003/04/27 00:22:12 max Exp $
-# $FreeBSD: src/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile,v 1.3 2004/01/13 11:28:49 ru Exp $
+# $FreeBSD: src/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile,v 1.4 2004/06/28 19:06:30 imp Exp $
.PATH: ${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubtbcmfw
@@ -7,7 +7,7 @@
-I${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubtbcmfw
KMOD= ubtbcmfw
-SRCS= ubtbcmfw.c bus_if.h device_if.h vnode_if.h opt_usb.h
+SRCS= ubtbcmfw.c bus_if.h device_if.h vnode_if.h opt_usb.h usbdevs.h
.include <bsd.kmod.mk>
==== //depot/projects/netperf_socket/sys/net/if_spppsubr.c#8 (text+ko) ====
@@ -17,7 +17,7 @@
*
* From: Version 2.4, Thu Apr 30 17:17:21 MSD 1997
*
- * $FreeBSD: src/sys/net/if_spppsubr.c,v 1.111 2004/06/25 10:25:33 rik Exp $
+ * $FreeBSD: src/sys/net/if_spppsubr.c,v 1.112 2004/06/28 15:32:24 rik Exp $
*/
#include <sys/param.h>
@@ -720,7 +720,7 @@
if (debug)
log(LOG_DEBUG, SPP_FMT "protocol queue overflow\n",
SPP_ARGS(ifp));
- goto drop;
+ goto drop2;
}
if (do_account)
/*
==== //depot/projects/netperf_socket/sys/pc98/pc98/sio.c#13 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/pc98/pc98/sio.c,v 1.220 2004/06/26 09:20:07 phk Exp $
+ * $FreeBSD: src/sys/pc98/pc98/sio.c,v 1.222 2004/06/28 16:17:11 jhb Exp $
* from: @(#)com.c 7.5 (Berkeley) 5/16/91
* from: i386/isa sio.c,v 1.234
*/
@@ -1801,9 +1801,9 @@
printf("\n");
if (sio_fast_ih == NULL) {
- swi_add(&tty_ithd, "tty:sio", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&tty_ithd, "sio", siopoll, NULL, SWI_TTY, 0,
&sio_fast_ih);
- swi_add(&clk_ithd, "tty:sio", siopoll, NULL, SWI_TTY, 0,
+ swi_add(&clk_ithd, "sio", siopoll, NULL, SWI_CLOCK, 0,
&sio_slow_ih);
}
minorbase = UNIT_TO_MINOR(unit);
@@ -2754,7 +2754,8 @@
recv_data = 0;
}
++com->bytes_in;
- if (com->tp->t_hotchar != 0 && recv_data == com->tp->t_hotchar)
+ if (com->tp != NULL &&
+ com->tp->t_hotchar != 0 && recv_data == com->tp->t_hotchar)
swi_sched(sio_fast_ih, 0);
ioptr = com->iptr;
if (ioptr >= com->ibufend)
==== //depot/projects/netperf_socket/sys/sys/interrupt.h#2 (text+ko) ====
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/sys/interrupt.h,v 1.26 2003/11/17 06:08:10 peter Exp $
+ * $FreeBSD: src/sys/sys/interrupt.h,v 1.27 2004/06/28 16:21:51 jhb Exp $
*/
#ifndef _SYS_INTERRUPT_H_
@@ -85,19 +85,18 @@
#define SWI_DELAY 0x2
/*
- * Software interrupt bit numbers in priority order. The priority only
- * determines which swi will be dispatched next; a higher priority swi
- * may be dispatched when a nested h/w interrupt handler returns.
+ * Software interrupt numbers in priority order. The priority determines
+ * the priority of the corresponding interrupt thread.
*/
#define SWI_TTY 0
#define SWI_NET 1
#define SWI_CAMNET 2
#define SWI_CAMBIO 3
#define SWI_VM 4
-#define SWI_TQ_FAST 5
+#define SWI_CLOCK 5
+#define SWI_TQ_FAST 6
+#define SWI_TQ 6
#define SWI_TQ_GIANT 6
-#define SWI_TQ 7
-#define SWI_CLOCK 8
extern struct ithd *tty_ithd;
extern struct ithd *clk_ithd;
==== //depot/projects/netperf_socket/sys/sys/sleepqueue.h#3 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/sys/sleepqueue.h,v 1.2 2004/03/12 19:06:18 jhb Exp $
+ * $FreeBSD: src/sys/sys/sleepqueue.h,v 1.3 2004/06/28 18:57:06 jhb Exp $
*/
#ifndef _SYS_SLEEPQUEUE_H_
@@ -98,7 +98,7 @@
void sleepq_remove(struct thread *, void *);
void sleepq_signal(void *, int, int);
void sleepq_set_timeout(void *wchan, int timo);
-int sleepq_timedwait(void *wchan, int signal_caught);
+int sleepq_timedwait(void *wchan);
int sleepq_timedwait_sig(void *wchan, int signal_caught);
void sleepq_wait(void *);
int sleepq_wait_sig(void *wchan);
==== //depot/projects/netperf_socket/sys/vm/vm_map.c#10 (text+ko) ====
@@ -63,7 +63,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/vm_map.c,v 1.339 2004/06/24 22:43:46 green Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/vm_map.c,v 1.340 2004/06/28 19:15:40 gallatin Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -2360,12 +2360,12 @@
vm2->vm_ssize += btoc(entrysize);
} else if (entry->start >= (vm_offset_t)vm1->vm_daddr &&
entry->start < (vm_offset_t)vm1->vm_daddr + ctob(vm1->vm_dsize)) {
- newend = min(entry->end,
+ newend = ulmin(entry->end,
(vm_offset_t)vm1->vm_daddr + ctob(vm1->vm_dsize));
- vm2->vm_dsize += btoc(newend - entry->start);
+ vm2->vm_dsize += btoc(newend - entry->start);
} else if (entry->start >= (vm_offset_t)vm1->vm_taddr &&
entry->start < (vm_offset_t)vm1->vm_taddr + ctob(vm1->vm_tsize)) {
- newend = min(entry->end,
+ newend = ulmin(entry->end,
(vm_offset_t)vm1->vm_taddr + ctob(vm1->vm_tsize));
vm2->vm_tsize += btoc(newend - entry->start);
}
More information about the p4-projects
mailing list