Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Mar 2015 10:12:14 +0000 (UTC)
From:      Andrew Rybchenko <arybchik@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r280509 - stable/10/sys/dev/sfxge
Message-ID:  <201503251012.t2PACEQ2077632@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: arybchik
Date: Wed Mar 25 10:12:13 2015
New Revision: 280509
URL: https://svnweb.freebsd.org/changeset/base/280509

Log:
  MFC: 277885
  
  sfxge: Move txq->next pointer to part writable on completion path
  
  In fact the pointer is used only if more than one TXQ is processed in
  one interrupt.
  It is used (read-write) on completion path only.
  Also it makes the first part of the structure smaller and it fits now
  into one 128byte cache line. So, TXQ structure becomes 128 bytes
  smaller.
  
  Sponsored by:   Solarflare Communications, Inc.
  Approved by:    gnn (mentor)

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	Wed Mar 25 10:11:17 2015	(r280508)
+++ stable/10/sys/dev/sfxge/sfxge_tx.h	Wed Mar 25 10:12:13 2015	(r280509)
@@ -139,7 +139,6 @@ struct sfxge_txq {
 	bus_dma_tag_t			packet_dma_tag;
 	efx_buffer_t			*pend_desc;
 	efx_txq_t			*common;
-	struct sfxge_txq		*next;
 
 	efsys_mem_t			*tsoh_buffer;
 
@@ -173,6 +172,7 @@ struct sfxge_txq {
 	 */
 	unsigned int			pending __aligned(CACHE_LINE_SIZE);
 	unsigned int			completed;
+	struct sfxge_txq		*next;
 };
 
 extern int sfxge_tx_packet_add(struct sfxge_txq *, struct mbuf *);



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