dlm: disable nagle for SCTP
authorMike Christie <michaelc@cs.wisc.edu>
Fri, 14 Jun 2013 09:56:14 +0000 (04:56 -0500)
committerDavid Teigland <teigland@redhat.com>
Fri, 14 Jun 2013 18:07:11 +0000 (13:07 -0500)
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>
fs/dlm/lowcomms.c

index a4fad32..4f539dd 100644 (file)
@@ -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;