summaryrefslogtreecommitdiffstats
path: root/sys/i386
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-01-24 00:06:26 +0000
committerjhb <jhb@FreeBSD.org>2001-01-24 00:06:26 +0000
commit0717c33b6439fd713c3cd6097f3c637c5f38f742 (patch)
treef656ae6db059c06492567c5a680277d87730a02a /sys/i386
parentb5d0418fc1e94ea9baa7b6ebb9ee8bfe9c277ae9 (diff)
downloadFreeBSD-src-0717c33b6439fd713c3cd6097f3c637c5f38f742.zip
FreeBSD-src-0717c33b6439fd713c3cd6097f3c637c5f38f742.tar.gz
Use selrecord() instead of doing the work ourselves.
Diffstat (limited to 'sys/i386')
-rw-r--r--sys/i386/isa/asc.c7
-rw-r--r--sys/i386/isa/pcaudio.c11
2 files changed, 3 insertions, 15 deletions
diff --git a/sys/i386/isa/asc.c b/sys/i386/isa/asc.c
index 086e0c0..eabaff8 100644
--- a/sys/i386/isa/asc.c
+++ b/sys/i386/isa/asc.c
@@ -865,7 +865,6 @@ ascpoll(dev_t dev, int events, struct proc *p)
int unit = UNIT(minor(dev));
struct asc_unit *scu = unittab + unit;
int sps;
- struct proc *p1;
int revents = 0;
sps=spltty();
@@ -877,11 +876,7 @@ ascpoll(dev_t dev, int events, struct proc *p)
if (!(scu->flags & DMA_ACTIVE))
dma_restart(scu);
- if (scu->selp.si_pid && (p1=pfind(scu->selp.si_pid))
- && p1->p_wchan == (caddr_t)&selwait)
- scu->selp.si_flags = SI_COLL;
- else
- scu->selp.si_pid = p->p_pid;
+ selrecord(p, &scu->selp);
}
}
splx(sps);
diff --git a/sys/i386/isa/pcaudio.c b/sys/i386/isa/pcaudio.c
index c1fc186..f4a9a4b 100644
--- a/sys/i386/isa/pcaudio.c
+++ b/sys/i386/isa/pcaudio.c
@@ -567,7 +567,6 @@ static int
pcapoll(dev_t dev, int events, struct proc *p)
{
int s;
- struct proc *p1;
int revents = 0;
s = spltty();
@@ -576,14 +575,8 @@ pcapoll(dev_t dev, int events, struct proc *p)
if (!pca_status.in_use[0] || !pca_status.in_use[1] ||
!pca_status.in_use[2])
revents |= events & (POLLOUT | POLLWRNORM);
- else {
- if (pca_status.wsel.si_pid &&
- (p1=pfind(pca_status.wsel.si_pid))
- && p1->p_wchan == (caddr_t)&selwait)
- pca_status.wsel.si_flags = SI_COLL;
- else
- pca_status.wsel.si_pid = p->p_pid;
- }
+ else
+ selrecord(p, &pca_status.wsel);
}
splx(s);
return (revents);
OpenPOWER on IntegriCloud