Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Feb 2010 00:00:55 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r204155 - head/sys/dev/re
Message-ID:  <201002210000.o1L00tnG057428@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yongari
Date: Sun Feb 21 00:00:55 2010
New Revision: 204155
URL: http://svn.freebsd.org/changeset/base/204155

Log:
  Increase PCIe maximuim read request size to 2048. Because re(4) uses
  Tx DMA burst size 2048, I beleive PCIe maximum read request size
  also should match to the value of Tx DMA burst size. With this
  change I can get more than 800Mbps for TCP bulk transfers.
  Previously I was not able to get more than 700Mbps. If I enable TSO
  it now shows 927Mbps.

Modified:
  head/sys/dev/re/if_re.c

Modified: head/sys/dev/re/if_re.c
==============================================================================
--- head/sys/dev/re/if_re.c	Sat Feb 20 23:48:04 2010	(r204154)
+++ head/sys/dev/re/if_re.c	Sun Feb 21 00:00:55 2010	(r204155)
@@ -1162,6 +1162,9 @@ re_attach(device_t dev)
 	msic = 0;
 	if (pci_find_extcap(dev, PCIY_EXPRESS, &reg) == 0) {
 		sc->rl_flags |= RL_FLAG_PCIE;
+		/* Set PCIe maximum read request size to 2048. */
+		if (pci_get_max_read_req(dev) < 2048)
+			pci_set_max_read_req(dev, 2048);
 		msic = pci_msi_count(dev);
 		if (bootverbose)
 			device_printf(dev, "MSI count : %d\n", msic);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002210000.o1L00tnG057428>