From f5d125c53df7a67b8f9a477e5a793dc055271944 Mon Sep 17 00:00:00 2001 From: Nathan Whitehorn Date: Wed, 11 Jan 2012 16:53:51 +0000 Subject: [PATCH] Add a memory barrier to bus_dmamap_sync(), as should have always been present. We need a sync instead of eieio, as eieio does not enforce storage ordering between main and device memory. --- sys/powerpc/powerpc/busdma_machdep.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/powerpc/powerpc/busdma_machdep.c b/sys/powerpc/powerpc/busdma_machdep.c index 9ebc0970998f..7f9f8ec7a374 100644 --- a/sys/powerpc/powerpc/busdma_machdep.c +++ b/sys/powerpc/powerpc/busdma_machdep.c @@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include "iommu_if.h" @@ -979,6 +980,8 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) dmat->bounce_zone->total_bounced++; } } + + powerpc_sync(); } static void