summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2005-09-12 10:13:15 +0000
committerrwatson <rwatson@FreeBSD.org>2005-09-12 10:13:15 +0000
commit919d519cbbf1563e57778c33e1f384f2a5e7d871 (patch)
tree2c84cc90abbd97ac4c2a8a4ca2b23efbc8e911a5 /sys/fs
parent5be69d1d563a5b70d4b0f337a5d6f44f2450b8a5 (diff)
downloadFreeBSD-src-919d519cbbf1563e57778c33e1f384f2a5e7d871.zip
FreeBSD-src-919d519cbbf1563e57778c33e1f384f2a5e7d871.tar.gz
After going to some trouble to identify only the write-related events
to poll the write socket for, the fifo polling code proceeded to poll for the complete set of events. Use 'levents' instead of 'events' as the argument to poll, and only poll the write socket if there is interest in write events. MFC after: 3 days
Diffstat (limited to 'sys/fs')
-rw-r--r--sys/fs/fifofs/fifo_vnops.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/fs/fifofs/fifo_vnops.c b/sys/fs/fifofs/fifo_vnops.c
index c057346..4483fdf 100644
--- a/sys/fs/fifofs/fifo_vnops.c
+++ b/sys/fs/fifofs/fifo_vnops.c
@@ -641,11 +641,11 @@ fifo_poll_f(struct file *fp, int events, struct ucred *cred, struct thread *td)
}
}
levents = events & (POLLOUT | POLLWRNORM | POLLWRBAND);
- if (events) {
+ if (levents) {
filetmp.f_data = fip->fi_writesock;
filetmp.f_cred = cred;
if (filetmp.f_data) {
- revents |= soo_poll(&filetmp, events, cred, td);
+ revents |= soo_poll(&filetmp, levents, cred, td);
}
}
return (revents);
OpenPOWER on IntegriCloud