svn commit: r293930 - stable/10/sys/dev/sfxge

Andrew Rybchenko arybchik at FreeBSD.org
Thu Jan 14 14:19:05 UTC 2016


Author: arybchik
Date: Thu Jan 14 14:19:03 2016
New Revision: 293930
URL: https://svnweb.freebsd.org/changeset/base/293930

Log:
  MFC r291569
  
  sfxge: avoid TSO packets collapses if packet header uses 2 segments
  
  It is really observed in the case of VLAN over sfxge interface.
  Also this change makes total value equal to 35 which is default assumed
  by the kernel for if_hw_tsomaxsegcount.
  
  Sponsored by:   Solarflare Communications, Inc.

Modified:
  stable/10/sys/dev/sfxge/sfxge_tx.h
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/sfxge/sfxge_tx.h
==============================================================================
--- stable/10/sys/dev/sfxge/sfxge_tx.h	Thu Jan 14 14:18:10 2016	(r293929)
+++ stable/10/sys/dev/sfxge/sfxge_tx.h	Thu Jan 14 14:19:03 2016	(r293930)
@@ -53,11 +53,13 @@
  * TSO, the mbuf length may be just over 64K, divided into 2K mbuf
  * clusters taking into account that the first may be not 2K cluster
  * boundary aligned.
+ * Packet header may be split into two segments because of, for example,
+ * VLAN header insertion.
  * 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)
+	(2 + howmany(SFXGE_TSO_MAX_SIZE, MCLBYTES) + 1)
 
 /*
  * Buffer mapping flags.


More information about the svn-src-all mailing list