On Wed, Dec 02, 2020 at 04:54:24PM +0000, Michal Meloun wrote: > Author: mmel > Date: Wed Dec 2 16:54:24 2020 > New Revision: 368279 > URL: https://svnweb.freebsd.org/changeset/base/368279 > > Log: > NVME: Multiple busdma related fixes. ...
> - in nvme_qpair_submit_tracker(), don't do explicit wmb() also for arm > and arm64. Bus_dmamap_sync() on these architectures is sufficient to > ensure > that all CPU stores are visible to external (including DMA) observers. > @@ -982,7 +982,7 @@ nvme_qpair_submit_tracker(struct nvme_qpair *qpair, st > > bus_dmamap_sync(qpair->dma_tag, qpair->queuemem_map, > BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); > -#ifndef __powerpc__ > +#if !defined( __powerpc__) && !defined( __aarch64__) && !defined( __arm__) > /* > * powerpc's bus_dmamap_sync() already includes a heavyweight sync, but > * no other archs do. Does anybody have any evidence that the wmb() below is useful ? For instance, on x86, does nvme driver use any write-combining mappings ? _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"