summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_event.c
diff options
context:
space:
mode:
authorjlemon <jlemon@FreeBSD.org>2000-08-01 04:27:50 +0000
committerjlemon <jlemon@FreeBSD.org>2000-08-01 04:27:50 +0000
commit08a68c236b14ddaac3f223169c8f8dcd704f2d40 (patch)
tree4c5e0b5f3e604fca43ea42cd47333591c1299eb5 /sys/kern/kern_event.c
parent2b61c92449d4692636f90ec9502761c5b59aa7da (diff)
downloadFreeBSD-src-08a68c236b14ddaac3f223169c8f8dcd704f2d40.zip
FreeBSD-src-08a68c236b14ddaac3f223169c8f8dcd704f2d40.tar.gz
Back out rev 1.12; its not clear that this is the right thing to do,
and in any event, it wasn't done correctly in the first place.
Diffstat (limited to 'sys/kern/kern_event.c')
-rw-r--r--sys/kern/kern_event.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c
index 0fce41b..2db8524 100644
--- a/sys/kern/kern_event.c
+++ b/sys/kern/kern_event.c
@@ -557,9 +557,12 @@ start:
kq->kq_state |= KQ_SLEEP;
error = tsleep(kq, PSOCK | PCATCH, "kqread", timeout);
splx(s);
- if (error == 0 || error == ERESTART)
+ if (error == 0)
goto retry;
- if (error == EWOULDBLOCK)
+ /* don't restart after signals... */
+ if (error == ERESTART)
+ error = EINTR;
+ else if (error == EWOULDBLOCK)
error = 0;
goto done;
}
OpenPOWER on IntegriCloud