summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/uipc_sockbuf.c2
-rw-r--r--sys/kern/uipc_socket.c13
-rw-r--r--sys/kern/uipc_socket2.c2
-rw-r--r--sys/sys/socketvar.h2
4 files changed, 6 insertions, 13 deletions
diff --git a/sys/kern/uipc_sockbuf.c b/sys/kern/uipc_sockbuf.c
index 9f5da29..16ee01e 100644
--- a/sys/kern/uipc_sockbuf.c
+++ b/sys/kern/uipc_sockbuf.c
@@ -189,7 +189,7 @@ sonewconn(head, connstatus)
if (head->so_qlen > 3 * head->so_qlimit / 2)
return ((struct socket *)0);
- so = soalloc(0);
+ so = soalloc(M_NOWAIT);
if (so == NULL)
return ((struct socket *)0);
if ((head->so_options & SO_ACCEPTFILTER) != 0)
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index 683bc0d..d0bd8af 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -128,21 +128,14 @@ SYSCTL_INT(_kern_ipc_zero_copy, OID_AUTO, send, CTLFLAG_RW,
* soalloc() returns a socket with a ref count of 0.
*/
struct socket *
-soalloc(waitok)
- int waitok;
+soalloc(int mflags)
{
struct socket *so;
#ifdef MAC
int error;
#endif
- int flag;
- if (waitok == 1)
- flag = M_WAITOK;
- else
- flag = M_NOWAIT;
- flag |= M_ZERO;
- so = uma_zalloc(socket_zone, flag);
+ so = uma_zalloc(socket_zone, mflags | M_ZERO);
if (so) {
#ifdef MAC
error = mac_init_socket(so, flag);
@@ -195,7 +188,7 @@ socreate(dom, aso, type, proto, cred, td)
if (prp->pr_type != type)
return (EPROTOTYPE);
- so = soalloc(1);
+ so = soalloc(M_WAITOK);
if (so == NULL)
return (ENOBUFS);
diff --git a/sys/kern/uipc_socket2.c b/sys/kern/uipc_socket2.c
index 9f5da29..16ee01e 100644
--- a/sys/kern/uipc_socket2.c
+++ b/sys/kern/uipc_socket2.c
@@ -189,7 +189,7 @@ sonewconn(head, connstatus)
if (head->so_qlen > 3 * head->so_qlimit / 2)
return ((struct socket *)0);
- so = soalloc(0);
+ so = soalloc(M_NOWAIT);
if (so == NULL)
return ((struct socket *)0);
if ((head->so_options & SO_ACCEPTFILTER) != 0)
diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h
index cdb5942..b1b9e16 100644
--- a/sys/sys/socketvar.h
+++ b/sys/sys/socketvar.h
@@ -378,8 +378,8 @@ int sbwait(struct sockbuf *sb);
int sb_lock(struct sockbuf *sb);
int soabort(struct socket *so);
int soaccept(struct socket *so, struct sockaddr **nam);
+struct socket *soalloc(int mflags);
int socheckuid(struct socket *so, uid_t uid);
-struct socket *soalloc(int waitok);
int sobind(struct socket *so, struct sockaddr *nam, struct thread *td);
void socantrcvmore(struct socket *so);
void socantsendmore(struct socket *so);
OpenPOWER on IntegriCloud