From f3a46d9d7ab5a232af70d41d12d612b1ae1af07e Mon Sep 17 00:00:00 2001 From: Julia Jiang Date: Thu, 23 Mar 2023 12:45:36 -0400 Subject: [PATCH] SWDEV-388516 - Fix OCLPerf tests intermittent crashing Change-Id: Iea69526a0ade08c33f68515bf6682b62291fdc7a --- opencl/tests/ocltst/module/perf/OCLPerfImageCopyCorners.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageCopySpeed.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageCreate.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageMapUnmap.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageReadSpeed.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageReadsRGBA.cpp | 3 +++ opencl/tests/ocltst/module/perf/OCLPerfImageSampleRate.cpp | 4 ++++ opencl/tests/ocltst/module/perf/OCLPerfImageWriteSpeed.cpp | 6 ++++++ .../tests/ocltst/module/perf/OCLPerfMapImageReadSpeed.cpp | 3 +++ .../tests/ocltst/module/perf/OCLPerfMapImageWriteSpeed.cpp | 3 +++ 10 files changed, 34 insertions(+) diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageCopyCorners.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageCopyCorners.cpp index ce855d0a0a..39af9dd6cc 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageCopyCorners.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageCopyCorners.cpp @@ -354,6 +354,9 @@ void OCLPerfImageCopyCorners::run(void) { } unsigned int OCLPerfImageCopyCorners::close(void) { + if (skip_) { + return CL_SUCCESS; + } _wrapper->clFinish(cmd_queue_); if (srcBuffer_) { diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageCopySpeed.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageCopySpeed.cpp index 699142d2e3..29d72372ce 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageCopySpeed.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageCopySpeed.cpp @@ -329,6 +329,9 @@ void OCLPerfImageCopySpeed::run(void) { } unsigned int OCLPerfImageCopySpeed::close(void) { + if (skip_) { + return CL_SUCCESS; + } _wrapper->clFinish(cmd_queue_); if (srcBuffer_) { diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageCreate.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageCreate.cpp index 57d9f0ee53..3769752cc9 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageCreate.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageCreate.cpp @@ -186,6 +186,9 @@ void OCLPerfImageCreate::run(void) { } unsigned int OCLPerfImageCreate::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (memptr) { delete memptr; } diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageMapUnmap.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageMapUnmap.cpp index cc22ea7740..680e43af14 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageMapUnmap.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageMapUnmap.cpp @@ -319,6 +319,9 @@ void OCLPerfImageMapUnmap::run(void) { } unsigned int OCLPerfImageMapUnmap::close(void) { + if(skip_) { + return CL_SUCCESS; + } _wrapper->clFinish(cmd_queue_); if (srcBuffer_) { diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageReadSpeed.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageReadSpeed.cpp index 2780205f6f..162f92e1cf 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageReadSpeed.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageReadSpeed.cpp @@ -284,6 +284,9 @@ void OCLPerfPinnedImageReadSpeed::open(unsigned int test, char *units, } unsigned int OCLPerfPinnedImageReadSpeed::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (memptr) { error_ = _wrapper->clEnqueueUnmapMemObject(cmd_queue_, inBuffer_, memptr, 0, NULL, NULL); diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageReadsRGBA.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageReadsRGBA.cpp index 51748efa37..8f92c2ce6d 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageReadsRGBA.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageReadsRGBA.cpp @@ -227,6 +227,9 @@ void OCLPerfImageReadsRGBA::run(void) { } unsigned int OCLPerfImageReadsRGBA::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (memptr) { delete memptr; } diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageSampleRate.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageSampleRate.cpp index cb64b92597..45c8971658 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageSampleRate.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageSampleRate.cpp @@ -296,6 +296,10 @@ void OCLPerfImageSampleRate::run(void) { } unsigned int OCLPerfImageSampleRate::close(void) { + if (skip_) + { + return CL_SUCCESS; + } _wrapper->clFinish(cmd_queue_); if (inBuffer_) { diff --git a/opencl/tests/ocltst/module/perf/OCLPerfImageWriteSpeed.cpp b/opencl/tests/ocltst/module/perf/OCLPerfImageWriteSpeed.cpp index 1fbe02de9e..3e132ba149 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfImageWriteSpeed.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfImageWriteSpeed.cpp @@ -191,6 +191,9 @@ void OCLPerfImageWriteSpeed::run(void) { } unsigned int OCLPerfImageWriteSpeed::close(void) { + if(skip_) { + return CL_SUCCESS; + } if (memptr) { delete memptr; } @@ -305,6 +308,9 @@ void OCLPerfPinnedImageWriteSpeed::open(unsigned int test, char *units, } unsigned int OCLPerfPinnedImageWriteSpeed::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (memptr) { error_ = _wrapper->clEnqueueUnmapMemObject(cmd_queue_, inBuffer_, memptr, 0, NULL, NULL); diff --git a/opencl/tests/ocltst/module/perf/OCLPerfMapImageReadSpeed.cpp b/opencl/tests/ocltst/module/perf/OCLPerfMapImageReadSpeed.cpp index 239680d4f8..b1f36f4ad9 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfMapImageReadSpeed.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfMapImageReadSpeed.cpp @@ -206,6 +206,9 @@ void OCLPerfMapImageReadSpeed::run(void) { } unsigned int OCLPerfMapImageReadSpeed::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (outBuffer_) { error_ = _wrapper->clReleaseMemObject(outBuffer_); CHECK_RESULT_NO_RETURN(error_ != CL_SUCCESS, diff --git a/opencl/tests/ocltst/module/perf/OCLPerfMapImageWriteSpeed.cpp b/opencl/tests/ocltst/module/perf/OCLPerfMapImageWriteSpeed.cpp index e4006288e3..3499424df1 100644 --- a/opencl/tests/ocltst/module/perf/OCLPerfMapImageWriteSpeed.cpp +++ b/opencl/tests/ocltst/module/perf/OCLPerfMapImageWriteSpeed.cpp @@ -207,6 +207,9 @@ void OCLPerfMapImageWriteSpeed::run(void) { } unsigned int OCLPerfMapImageWriteSpeed::close(void) { + if (skip_) { + return CL_SUCCESS; + } if (outBuffer_) { error_ = _wrapper->clReleaseMemObject(outBuffer_); CHECK_RESULT_NO_RETURN(error_ != CL_SUCCESS,