Date: Mon, 7 Jan 2019 03:36:33 +0000 (UTC) From: Andriy Voskoboinyk <avos@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r342827 - stable/12/sys/dev/rtwn/pci Message-ID: <201901070336.x073aXNE011652@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901070336.x073aXNE011652>