summaryrefslogtreecommitdiffstats
path: root/fs/dlm/lowcomms.c
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2013-06-14 11:56:14 +0200
committerDavid Teigland <teigland@redhat.com>2013-06-14 20:07:11 +0200
commit86e92ad299fb0be359efdd61812944497d4d8d52 (patch)
treed2c7b7f9096b51f6fc2c7b750d509fe6ccd5a91f /fs/dlm/lowcomms.c
parentdlm: retry failed SCTP sends (diff)
downloadlinux-86e92ad299fb0be359efdd61812944497d4d8d52.tar.xz
linux-86e92ad299fb0be359efdd61812944497d4d8d52.zip
dlm: disable nagle for SCTP
For TCP we disable Nagle and I cannot think of why it would be needed for SCTP. When disabled it seems to improve dlm_lock operations like it does for TCP. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm/lowcomms.c')
-rw-r--r--fs/dlm/lowcomms.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
index a4fad32bb788..4f539dd9b1e9 100644
--- a/fs/dlm/lowcomms.c
+++ b/fs/dlm/lowcomms.c
@@ -1346,6 +1346,7 @@ static int sctp_listen_for_all(void)
int result = -EINVAL, num = 1, i, addr_len;
struct connection *con = nodeid2con(0, GFP_NOFS);
int bufsize = NEEDED_RMEM;
+ int one = 1;
if (!con)
return -ENOMEM;
@@ -1380,6 +1381,11 @@ static int sctp_listen_for_all(void)
goto create_delsock;
}
+ result = kernel_setsockopt(sock, SOL_SCTP, SCTP_NODELAY, (char *)&one,
+ sizeof(one));
+ if (result < 0)
+ log_print("Could not set SCTP NODELAY error %d\n", result);
+
/* Init con struct */
sock->sk->sk_user_data = con;
con->sock = sock;