summaryrefslogtreecommitdiffstats
path: root/sys/kern/sys_socket.c
diff options
context:
space:
mode:
authormpi <mpi@openbsd.org>2017-12-10 11:31:54 +0000
committermpi <mpi@openbsd.org>2017-12-10 11:31:54 +0000
commit3bf371cf5dd7363c2732088f9e49d4a9813d0139 (patch)
treecc48cf8739be3f25111ad4a2e6fdac5e028d329e /sys/kern/sys_socket.c
parentRemove outdated comment and trailing spaces. (diff)
downloadwireguard-openbsd-3bf371cf5dd7363c2732088f9e49d4a9813d0139.tar.xz
wireguard-openbsd-3bf371cf5dd7363c2732088f9e49d4a9813d0139.zip
Move SB_SPLICE, SB_WAIT and SB_SEL to `sb_flags', serialized by solock().
SB_KNOTE remains the only bit set on `sb_flagsintr' as it is set/unset in contexts related to kqueue(2) where we'd like to avoid grabbing solock(). While here add some KERNEL_LOCK()/UNLOCK() dances around selwakeup() and csignal() to mark which remaining functions need to be addressed in the socket layer. ok visa@, bluhm@
Diffstat (limited to 'sys/kern/sys_socket.c')
-rw-r--r--sys/kern/sys_socket.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c
index 4b1b826b349..e070acce938 100644
--- a/sys/kern/sys_socket.c
+++ b/sys/kern/sys_socket.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sys_socket.c,v 1.34 2017/11/14 16:01:55 tb Exp $ */
+/* $OpenBSD: sys_socket.c,v 1.35 2017/12/10 11:31:54 mpi Exp $ */
/* $NetBSD: sys_socket.c,v 1.13 1995/08/12 23:59:09 mycroft Exp $ */
/*
@@ -166,11 +166,11 @@ soo_poll(struct file *fp, int events, struct proc *p)
if (revents == 0) {
if (events & (POLLIN | POLLPRI | POLLRDNORM | POLLRDBAND)) {
selrecord(p, &so->so_rcv.sb_sel);
- so->so_rcv.sb_flagsintr |= SB_SEL;
+ so->so_rcv.sb_flags |= SB_SEL;
}
if (events & (POLLOUT | POLLWRNORM)) {
selrecord(p, &so->so_snd.sb_sel);
- so->so_snd.sb_flagsintr |= SB_SEL;
+ so->so_snd.sb_flags |= SB_SEL;
}
}
sounlock(s);