svn commit: r291488 - head/sys/dev/sfxge

Andrew Rybchenko arybchik at FreeBSD.org
Mon Nov 30 13:27:42 UTC 2015


Author: arybchik
Date: Mon Nov 30 13:27:40 2015
New Revision: 291488
URL: https://svnweb.freebsd.org/changeset/base/291488

Log:
  sfxge: avoid TSO packets collapses bacause of not 2K aligned data
  
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:      2 days
  Differential Revision: https://reviews.freebsd.org/D4310

Modified:
  head/sys/dev/sfxge/sfxge_tx.h

Modified: head/sys/dev/sfxge/sfxge_tx.h
==============================================================================
--- head/sys/dev/sfxge/sfxge_tx.h	Mon Nov 30 13:20:49 2015	(r291487)
+++ head/sys/dev/sfxge/sfxge_tx.h	Mon Nov 30 13:27:40 2015	(r291488)
@@ -51,11 +51,13 @@
 
 /* Maximum number of DMA segments needed to map an mbuf chain.  With
  * TSO, the mbuf length may be just over 64K, divided into 2K mbuf
- * clusters.  (The chain could be longer than this initially, but can
- * be shortened with m_collapse().)
+ * clusters taking into account that the first may be not 2K cluster
+ * boundary aligned.
+ * The chain could be longer than this initially, but can be shortened
+ * with m_collapse().
  */
 #define	SFXGE_TX_MAPPING_MAX_SEG					\
-	(1 + howmany(SFXGE_TSO_MAX_SIZE, MCLBYTES))
+	(1 + howmany(SFXGE_TSO_MAX_SIZE, MCLBYTES) + 1)
 
 /*
  * Buffer mapping flags.


More information about the svn-src-head mailing list