summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorroger <roger@FreeBSD.org>1999-06-29 16:45:51 +0000
committerroger <roger@FreeBSD.org>1999-06-29 16:45:51 +0000
commitec30ce339b93d3c5bac7020cc6666437fb32b06a (patch)
tree3a0b2a2688fdc6b999c6602b25b22c2dc894ccec /sys
parenta9d802a64d3407325930af13170cf26938f90c33 (diff)
downloadFreeBSD-src-ec30ce339b93d3c5bac7020cc6666437fb32b06a.zip
FreeBSD-src-ec30ce339b93d3c5bac7020cc6666437fb32b06a.tar.gz
Stop signals being generated after meteor_close.
Update METEORSSIGNAL to disable signals by setting the signal to 0. PR: i386/10533 Submitted by: Frode Vatvedt Fjeld <frodef@dslab7.cs.uit.no>
Diffstat (limited to 'sys')
-rw-r--r--sys/pci/meteor.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/pci/meteor.c b/sys/pci/meteor.c
index 1f7c5f1..804e2e7 100644
--- a/sys/pci/meteor.c
+++ b/sys/pci/meteor.c
@@ -1242,6 +1242,7 @@ meteor_close(dev_t dev, int flags, int fmt, struct proc *p)
*/
mtr->base->cap_cntl = 0x8ff0;
mtr->flags &= ~(METEOR_CAP_MASK|METEOR_WANT_MASK);
+ mtr->proc = (struct proc *)0;
#ifdef METEOR_DEALLOC_PAGES
if (mtr->bigbuf != NULL) {
@@ -1402,7 +1403,11 @@ meteor_ioctl(dev_t dev, u_long cmd, caddr_t arg, int flag, struct proc *pr)
break;
case METEORSSIGNAL:
mtr->signal = *(int *) arg;
- mtr->proc = pr;
+ if (mtr->signal) {
+ mtr->proc = pr;
+ } else {
+ mtr->proc = (struct proc *)0;
+ }
break;
case METEORGSIGNAL:
*(int *)arg = mtr->signal;
OpenPOWER on IntegriCloud