aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/uipc_socket.c
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2006-06-08 22:33:18 +0000
committerRobert Watson <rwatson@FreeBSD.org>2006-06-08 22:33:18 +0000
commite02421f3fbfe3de8174a2bdb9d2f07b8f5012d16 (patch)
tree3c64539170deb9b84b29e1d064cd7022094b4f83 /sys/kern/uipc_socket.c
parent541b10900f1850a4811ac28deeb85cb930d8a5ca (diff)
downloadsrc-e02421f3fbfe3de8174a2bdb9d2f07b8f5012d16.tar.gz
src-e02421f3fbfe3de8174a2bdb9d2f07b8f5012d16.zip
Rearrange code in soalloc() so that it's less indented by returning
early if uma_zalloc() from the socket zone fails. No functional change. MFC after: 1 week
Notes
Notes: svn path=/head/; revision=159417
Diffstat (limited to 'sys/kern/uipc_socket.c')
-rw-r--r--sys/kern/uipc_socket.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index b35faf0649cf..f638f9132e7a 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -210,21 +210,21 @@ soalloc(int mflags)
struct socket *so;
so = uma_zalloc(socket_zone, mflags | M_ZERO);
- if (so != NULL) {
+ if (so == NULL)
+ return (NULL);
#ifdef MAC
- if (mac_init_socket(so, mflags) != 0) {
- uma_zfree(socket_zone, so);
- return (NULL);
- }
-#endif
- SOCKBUF_LOCK_INIT(&so->so_snd, "so_snd");
- SOCKBUF_LOCK_INIT(&so->so_rcv, "so_rcv");
- TAILQ_INIT(&so->so_aiojobq);
- mtx_lock(&so_global_mtx);
- so->so_gencnt = ++so_gencnt;
- ++numopensockets;
- mtx_unlock(&so_global_mtx);
+ if (mac_init_socket(so, mflags) != 0) {
+ uma_zfree(socket_zone, so);
+ return (NULL);
}
+#endif
+ SOCKBUF_LOCK_INIT(&so->so_snd, "so_snd");
+ SOCKBUF_LOCK_INIT(&so->so_rcv, "so_rcv");
+ TAILQ_INIT(&so->so_aiojobq);
+ mtx_lock(&so_global_mtx);
+ so->so_gencnt = ++so_gencnt;
+ ++numopensockets;
+ mtx_unlock(&so_global_mtx);
return (so);
}