The bounce buffering code in NonCoherentDmaLib copies data into the
bounce buffer using CopyMem(), but passes Map->HostAddress as the
source of the copy before it has been assigned its correct value.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@arm.com>
Reviewed-by: Leif Lindholm <leif@nuviainc.com>
Reviewed-by: Andrei Warkentin <awarkentin@vmware.com>
}\r
\r
if (Map->Operation == MapOperationBusMasterRead) {\r
- CopyMem (Map->BufferAddress, (VOID *)(UINTN)Map->HostAddress,\r
- *NumberOfBytes);\r
+ CopyMem (Map->BufferAddress, (VOID *)(UINTN)HostAddress, *NumberOfBytes);\r
}\r
mCpu->FlushDataCache (mCpu, (UINTN)Map->BufferAddress, AllocSize,\r
EfiCpuFlushTypeWriteBack);\r