svn commit: r301720 - head/usr.sbin/ctld

Edward Tomasz Napierala trasz at FreeBSD.org
Thu Jun 9 07:19:03 UTC 2016


Author: trasz
Date: Thu Jun  9 07:19:02 2016
New Revision: 301720
URL: https://svnweb.freebsd.org/changeset/base/301720

Log:
  Don't cap FirstBurstLength to maximum MaxRecvDataSegmentLength claimed
  by the offload driver; there is no reason to do so, and it actually
  harms performance.
  
  MFC after:	1 month

Modified:
  head/usr.sbin/ctld/ctld.h
  head/usr.sbin/ctld/login.c

Modified: head/usr.sbin/ctld/ctld.h
==============================================================================
--- head/usr.sbin/ctld/ctld.h	Thu Jun  9 06:55:00 2016	(r301719)
+++ head/usr.sbin/ctld/ctld.h	Thu Jun  9 07:19:02 2016	(r301720)
@@ -49,6 +49,7 @@
 #define	MAX_NAME_LEN			223
 #define	MAX_DATA_SEGMENT_LENGTH		(128 * 1024)
 #define	MAX_BURST_LENGTH		16776192
+#define	FIRST_BURST_LENGTH		(128 * 1024)
 #define	SOCKBUF_SIZE			1048576
 
 struct auth {

Modified: head/usr.sbin/ctld/login.c
==============================================================================
--- head/usr.sbin/ctld/login.c	Thu Jun  9 06:55:00 2016	(r301719)
+++ head/usr.sbin/ctld/login.c	Thu Jun  9 07:19:02 2016	(r301720)
@@ -574,13 +574,12 @@ login_negotiate_key(struct pdu *request,
 		tmp = strtoul(value, NULL, 10);
 		if (tmp <= 0) {
 			login_send_error(request, 0x02, 0x00);
-			log_errx(1, "received invalid "
-			    "FirstBurstLength");
+			log_errx(1, "received invalid FirstBurstLength");
 		}
-		if (tmp > conn->conn_data_segment_limit) {
-			log_debugx("capping FirstBurstLength from %zd to %zd",
-			    tmp, conn->conn_data_segment_limit);
-			tmp = conn->conn_data_segment_limit;
+		if (tmp > FIRST_BURST_LENGTH) {
+			log_debugx("capping FirstBurstLength from %zd to %d",
+			    tmp, FIRST_BURST_LENGTH);
+			tmp = FIRST_BURST_LENGTH;
 		}
 		conn->conn_first_burst_length = tmp;
 		keys_add_int(response_keys, name, tmp);


More information about the svn-src-head mailing list