svn commit: r308038 - head/sys/dev/netmap

Sean Bruno sbruno at FreeBSD.org
Fri Oct 28 13:37:59 UTC 2016


Author: sbruno
Date: Fri Oct 28 13:37:58 2016
New Revision: 308038
URL: https://svnweb.freebsd.org/changeset/base/308038

Log:
  The buffer address is always overwritten in the extended descriptor format,
  we have to refresh it ... always.  This fixes problems reported in NetMap
  with em(4) devices after conversion to extended descriptor format in
  svn r293331.
  
  Submitted by:	luigi@
  Reported by:	franco at opnsense.org
  MFC after:	2 days

Modified:
  head/sys/dev/netmap/if_em_netmap.h

Modified: head/sys/dev/netmap/if_em_netmap.h
==============================================================================
--- head/sys/dev/netmap/if_em_netmap.h	Fri Oct 28 12:59:21 2016	(r308037)
+++ head/sys/dev/netmap/if_em_netmap.h	Fri Oct 28 13:37:58 2016	(r308038)
@@ -277,9 +277,9 @@ em_netmap_rxsync(struct netmap_kring *kr
 			if (addr == NETMAP_BUF_BASE(na)) /* bad buf */
 				goto ring_reset;
 
+			curr->read.buffer_addr = htole64(paddr);
 			if (slot->flags & NS_BUF_CHANGED) {
 				/* buffer has changed, reload map */
-				curr->read.buffer_addr = htole64(paddr);
 				netmap_reload_map(na, rxr->rxtag, rxbuf->map, addr);
 				slot->flags &= ~NS_BUF_CHANGED;
 			}


More information about the svn-src-head mailing list