aboutsummaryrefslogtreecommitdiffstats
path: root/fs/dlm/lowcomms.c
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2013-06-14 05:56:14 -0400
committerDavid Teigland <teigland@redhat.com>2013-06-14 14:07:11 -0400
commit86e92ad299fb0be359efdd61812944497d4d8d52 (patch)
treed2c7b7f9096b51f6fc2c7b750d509fe6ccd5a91f /fs/dlm/lowcomms.c
parent5d6898714fe2ce485e95ac74479ed40ebd8d5748 (diff)
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)
1346 int result = -EINVAL, num = 1, i, addr_len; 1346 int result = -EINVAL, num = 1, i, addr_len;
1347 struct connection *con = nodeid2con(0, GFP_NOFS); 1347 struct connection *con = nodeid2con(0, GFP_NOFS);
1348 int bufsize = NEEDED_RMEM; 1348 int bufsize = NEEDED_RMEM;
1349 int one = 1;
1349 1350
1350 if (!con) 1351 if (!con)
1351 return -ENOMEM; 1352 return -ENOMEM;
@@ -1380,6 +1381,11 @@ static int sctp_listen_for_all(void)
1380 goto create_delsock; 1381 goto create_delsock;
1381 } 1382 }
1382 1383
1384 result = kernel_setsockopt(sock, SOL_SCTP, SCTP_NODELAY, (char *)&one,
1385 sizeof(one));
1386 if (result < 0)
1387 log_print("Could not set SCTP NODELAY error %d\n", result);
1388
1383 /* Init con struct */ 1389 /* Init con struct */
1384 sock->sk->sk_user_data = con; 1390 sock->sk->sk_user_data = con;
1385 con->sock = sock; 1391 con->sock = sock;