P4 to Git Change 1053379 by xcui@merged_opencl_jxcwin on 2014/07/08 19:38:01

EPR #304775 - fixed the bug 9838. The svm pointer in the arugment list needs to be tracked to make sure all operation of resource has been finished before we dispatch kernel.

	code review:
	http://ocltc.amd.com/reviews/r/5200/
	precheckin:
	http://ocltc.amd.com:8111/viewModification.html?modId=35125&personal=true&buildTypeId=&tab=vcsModificationTests

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#257 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#322 edit


[ROCm/clr commit: bf32cddc03]
이 커밋은 다음에 포함됨:
foreman
2014-07-08 19:45:31 -04:00
부모 1553537a82
커밋 af0bc54257
2개의 변경된 파일과 13개의 추가작업 그리고 9개의 파일을 삭제
+5 -4
파일 보기
@@ -3850,6 +3850,7 @@ HSAILKernel::loadArguments(
mem = amd::SvmManager::FindSvmBuffer(*reinterpret_cast<void* const*>(paramaddr));
if (mem != NULL) {
gpuMem = dev().getGpuMemory(mem);
gpuMem->wait(gpu, WaitOnBusyEngine);
memList.push_back(gpuMem);
}
else {
@@ -3861,10 +3862,10 @@ HSAILKernel::loadArguments(
gpuMem = *reinterpret_cast<Memory* const*>(paramaddr);
}
else {
mem = *reinterpret_cast<amd::Memory* const*>(paramaddr);
if (mem != NULL) {
gpuMem = dev().getGpuMemory(mem);
}
mem = *reinterpret_cast<amd::Memory* const*>(paramaddr);
if (mem != NULL) {
gpuMem = dev().getGpuMemory(mem);
}
}
if (gpuMem == NULL) {
WriteAqlArg(&aqlArgBuf, &gpuMem, sizeof(void*));