diff options
author | Niels Provos <provos@cvs.openbsd.org> | 2001-03-06 17:06:24 +0000 |
---|---|---|
committer | Niels Provos <provos@cvs.openbsd.org> | 2001-03-06 17:06:24 +0000 |
commit | 8e5a9c5d4beaa83b66abd7027f4cecef9361efc2 (patch) | |
tree | 521456984925a6059bf782ccf05bcdcd01f54111 /sys | |
parent | 99214f123cac0b3b50348d26df14e0942e071117 (diff) |
fix a kqueue related panic triggered by shutdown, okay art@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/uipc_socket.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 207f52feade..64c1efd1a7f 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uipc_socket.c,v 1.31 2001/03/01 20:54:34 provos Exp $ */ +/* $OpenBSD: uipc_socket.c,v 1.32 2001/03/06 17:06:23 provos Exp $ */ /* $NetBSD: uipc_socket.c,v 1.21 1996/02/04 02:17:52 christos Exp $ */ /* @@ -883,6 +883,9 @@ sorflush(so) (void) sblock(sb, M_WAITOK); s = splimp(); socantrcvmore(so); + /* XXX - the bzero stumps all over so_rcv, rm knotes while possible */ + if (sb->sb_flags & SB_KNOTE) + knote_remove(curproc, &sb->sb_sel.si_note); sbunlock(sb); asb = *sb; bzero((caddr_t)sb, sizeof (*sb)); |