From 9bfb7389bc263e23499676cf4606bc6e19f6469f Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Mon, 7 Mar 2005 13:50:16 +0000 Subject: [PATCH] When upcalling from a socket in soisconnected() for an accept filter, call with flag M_DONTWAIT rather than M_TRYWAIT, as we don't want to do blocking memory allocation (etc) in the netisr. MFC after: 3 days --- sys/kern/uipc_sockbuf.c | 2 +- sys/kern/uipc_socket2.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_sockbuf.c b/sys/kern/uipc_sockbuf.c index c7a922de976..17a09ca8c7d 100644 --- a/sys/kern/uipc_sockbuf.c +++ b/sys/kern/uipc_sockbuf.c @@ -143,7 +143,7 @@ soisconnected(so) so->so_rcv.sb_flags |= SB_UPCALL; so->so_options &= ~SO_ACCEPTFILTER; SOCK_UNLOCK(so); - so->so_upcall(so, so->so_upcallarg, M_TRYWAIT); + so->so_upcall(so, so->so_upcallarg, M_DONTWAIT); } return; } diff --git a/sys/kern/uipc_socket2.c b/sys/kern/uipc_socket2.c index c7a922de976..17a09ca8c7d 100644 --- a/sys/kern/uipc_socket2.c +++ b/sys/kern/uipc_socket2.c @@ -143,7 +143,7 @@ soisconnected(so) so->so_rcv.sb_flags |= SB_UPCALL; so->so_options &= ~SO_ACCEPTFILTER; SOCK_UNLOCK(so); - so->so_upcall(so, so->so_upcallarg, M_TRYWAIT); + so->so_upcall(so, so->so_upcallarg, M_DONTWAIT); } return; }