diff options
author | Allan Stephens <allan.stephens@windriver.com> | 2008-04-15 03:06:12 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-04-15 03:06:12 -0400 |
commit | 990098068fe963f956c14f681bd88d90dcb14584 (patch) | |
tree | 3ac3fe3f2e9ab8733fe89f26f7121e62a55b0659 /net/tipc/socket.c | |
parent | 2c8dd11636e3a5f14a7fb765331b7043f01fe937 (diff) |
[TIPC]: Skip connection flow control in connectionless sockets
This patch optimizes the receive path for SOCK_DGRAM and SOCK_RDM
messages by skipping over code that handles connection-based flow
control.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/socket.c')
-rw-r--r-- | net/tipc/socket.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/tipc/socket.c b/net/tipc/socket.c index ca6f52f392a9..91aa2dc51771 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c | |||
@@ -919,7 +919,8 @@ restart: | |||
919 | /* Consume received message (optional) */ | 919 | /* Consume received message (optional) */ |
920 | 920 | ||
921 | if (likely(!(flags & MSG_PEEK))) { | 921 | if (likely(!(flags & MSG_PEEK))) { |
922 | if (unlikely(++tsock->p->conn_unacked >= TIPC_FLOW_CONTROL_WIN)) | 922 | if ((sock->state != SS_READY) && |
923 | (++tsock->p->conn_unacked >= TIPC_FLOW_CONTROL_WIN)) | ||
923 | tipc_acknowledge(tsock->p->ref, tsock->p->conn_unacked); | 924 | tipc_acknowledge(tsock->p->ref, tsock->p->conn_unacked); |
924 | advance_queue(tsock); | 925 | advance_queue(tsock); |
925 | } | 926 | } |