ocl: restore clFinish() in unmap() for AMD devices

This reverts commit 7d91b8efcd.
This commit is contained in:
Alexander Alekhin 2014-10-24 14:29:38 +04:00
parent e40567eaee
commit 579a7fff6d

View File

@ -3979,6 +3979,11 @@ public:
u->markDeviceMemMapped(false);
CV_Assert( (retval = clEnqueueUnmapMemObject(q,
(cl_mem)u->handle, u->data, 0, 0, 0)) == CL_SUCCESS );
if (Device::getDefault().isAMD())
{
// required for multithreaded applications (see stitching test)
CV_OclDbgAssert(clFinish(q) == CL_SUCCESS);
}
u->data = 0;
}
else if( u->copyOnMap() && u->deviceCopyObsolete() )