Author: sbruno
Date: Mon Oct 31 16:48:16 2016
New Revision: 308136
URL: https://svnweb.freebsd.org/changeset/base/308136

Log:
  MFC r308038:
  
    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.

Modified:
  stable/10/sys/dev/netmap/if_em_netmap.h
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/netmap/if_em_netmap.h
==============================================================================
--- stable/10/sys/dev/netmap/if_em_netmap.h     Mon Oct 31 16:44:31 2016        
(r308135)
+++ stable/10/sys/dev/netmap/if_em_netmap.h     Mon Oct 31 16:48:16 2016        
(r308136)
@@ -279,9 +279,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;
                        }
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to