svn commit: r247776 - head/sys/arm/arm
Olivier Houchard
cognet at FreeBSD.org
Mon Mar 4 10:41:54 UTC 2013
Author: cognet
Date: Mon Mar 4 10:41:54 2013
New Revision: 247776
URL: http://svnweb.freebsd.org/changeset/base/247776
Log:
If we're using a PIPT L2 cache, only merge 2 segments if both the virtual
and the physical addreses are contiguous.
Submitted by: Thomas Skibo <ThomasSkibo at sbcglobal.net>
Modified:
head/sys/arm/arm/busdma_machdep-v6.c
Modified: head/sys/arm/arm/busdma_machdep-v6.c
==============================================================================
--- head/sys/arm/arm/busdma_machdep-v6.c Mon Mar 4 09:35:50 2013 (r247775)
+++ head/sys/arm/arm/busdma_machdep-v6.c Mon Mar 4 10:41:54 2013 (r247776)
@@ -1007,6 +1007,9 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dm
} else {
sl = &map->slist[map->sync_count - 1];
if (map->sync_count == 0 ||
+#ifdef ARM_L2_PIPT
+ curaddr != sl->busaddr + sl->datacount ||
+#endif
vaddr != sl->vaddr + sl->datacount) {
if (++map->sync_count > dmat->nsegments)
goto cleanup;
More information about the svn-src-head
mailing list