svn commit: r342827 - stable/12/sys/dev/rtwn/pci

Andriy Voskoboinyk avos at FreeBSD.org
Mon Jan 7 03:36:34 UTC 2019


Author: avos
Date: Mon Jan  7 03:36:33 2019
New Revision: 342827
URL: https://svnweb.freebsd.org/changeset/base/342827

Log:
  MFC r342672:
  rtwn_pci: fix excessive packet loss on Tx with RTL8188EE.
  
  Use proper flags for bus_dmamap_sync() in Tx path.
  
  MFC r342676:
  rtwn_pci(4): use proper bus_dmamap_sync flags after Tx.

Modified:
  stable/12/sys/dev/rtwn/pci/rtwn_pci_rx.c
  stable/12/sys/dev/rtwn/pci/rtwn_pci_tx.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/rtwn/pci/rtwn_pci_rx.c
==============================================================================
--- stable/12/sys/dev/rtwn/pci/rtwn_pci_rx.c	Mon Jan  7 02:39:40 2019	(r342826)
+++ stable/12/sys/dev/rtwn/pci/rtwn_pci_rx.c	Mon Jan  7 03:36:33 2019	(r342827)
@@ -197,7 +197,8 @@ rtwn_pci_tx_done(struct rtwn_softc *sc, int qid)
 	RTWN_DPRINTF(sc, RTWN_DEBUG_INTR, "%s: qid %d, last %d, cur %d\n",
 	    __func__, qid, ring->last, ring->cur);
 
-	bus_dmamap_sync(ring->desc_dmat, ring->desc_map, BUS_DMASYNC_POSTREAD);
+	bus_dmamap_sync(ring->desc_dmat, ring->desc_map,
+	    BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE);
 
 	while(ring->last != ring->cur) {
 		data = &ring->tx_data[ring->last];

Modified: stable/12/sys/dev/rtwn/pci/rtwn_pci_tx.c
==============================================================================
--- stable/12/sys/dev/rtwn/pci/rtwn_pci_tx.c	Mon Jan  7 02:39:40 2019	(r342826)
+++ stable/12/sys/dev/rtwn/pci/rtwn_pci_tx.c	Mon Jan  7 03:36:33 2019	(r342827)
@@ -174,8 +174,8 @@ rtwn_pci_tx_start_frame(struct rtwn_softc *sc, struct 
 	rtwn_dump_tx_desc(sc, txd);
 
 	bus_dmamap_sync(ring->desc_dmat, ring->desc_map,
-	    BUS_DMASYNC_POSTWRITE);
-	bus_dmamap_sync(ring->data_dmat, data->map, BUS_DMASYNC_POSTWRITE);
+	    BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+	bus_dmamap_sync(ring->data_dmat, data->map, BUS_DMASYNC_PREWRITE);
 
 	data->m = m;
 	data->ni = ni;


More information about the svn-src-all mailing list