summaryrefslogtreecommitdiffstats
path: root/sys/dev/ppc/ppc.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2007-02-23 16:25:08 +0000
committerjhb <jhb@FreeBSD.org>2007-02-23 16:25:08 +0000
commite21fb2b555d36a49b232ee191ef77f745b6c5280 (patch)
treee93bd90cb35a83882bef6ca2e41bbf03c4c5a077 /sys/dev/ppc/ppc.c
parent401f7aaf8a4b36c5409b47caeb111224c19cfa64 (diff)
downloadFreeBSD-src-e21fb2b555d36a49b232ee191ef77f745b6c5280.zip
FreeBSD-src-e21fb2b555d36a49b232ee191ef77f745b6c5280.tar.gz
Use 'pause' in several places rather than trying to tsleep() on NULL (which
triggers a KASSERT) or local variables. In the case of kern_ndis, the tsleep() actually used a common sleep address (curproc) making it susceptible to a premature wakeup.
Diffstat (limited to 'sys/dev/ppc/ppc.c')
-rw-r--r--sys/dev/ppc/ppc.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/dev/ppc/ppc.c b/sys/dev/ppc/ppc.c
index 4cb1b2a..72a7c86 100644
--- a/sys/dev/ppc/ppc.c
+++ b/sys/dev/ppc/ppc.c
@@ -1393,8 +1393,7 @@ ppc_exec_microseq(device_t dev, struct ppb_microseq **p_msq)
case MS_OP_ADELAY:
if (mi->arg[0].i)
- tsleep(NULL, PPBPRI, "ppbdelay",
- mi->arg[0].i * (hz/1000));
+ pause("ppbdelay", mi->arg[0].i * (hz/1000));
INCR_PC;
break;
OpenPOWER on IntegriCloud