Fix iommu_dvmamap_sync() to use the right address when flushing the
streaming cache. This bug could have the potential to cause data corruption on systems with Psycho U2P bridges (Sabre bridges have no streaming cache). However, due to the usual driver architecture, it is believed that corruption did occur only in rare cases (if at all).
This commit is contained in:
parent
6fe6a00661
commit
736b63df0d
@ -744,7 +744,7 @@ iommu_dvmamap_sync(bus_dma_tag_t pt, bus_dma_tag_t dt, struct iommu_state *is,
|
||||
vm_offset_t va;
|
||||
vm_size_t len;
|
||||
|
||||
va = (vm_offset_t)map->buf;
|
||||
va = (vm_offset_t)map->start;
|
||||
len = map->buflen;
|
||||
if ((op & BUS_DMASYNC_PREREAD) != 0)
|
||||
membar(Sync);
|
||||
|
Loading…
x
Reference in New Issue
Block a user