File tree Expand file tree Collapse file tree 1 file changed +7
-0
lines changed
source/loader/layers/sanitizer/asan Expand file tree Collapse file tree 1 file changed +7
-0
lines changed Original file line number Diff line number Diff line change @@ -474,6 +474,13 @@ __urdlllocal ur_result_t UR_APICALL urEnqueueKernelLaunch(
474
474
// / [out][optional] return an event object that identifies this
475
475
// / particular kernel execution instance.
476
476
ur_event_handle_t *phEvent) {
477
+
478
+ // This mutex is to prevent concurrent kernel launches on the same queue or
479
+ // across different queues as the DeviceASAN local/private shadow memory
480
+ // does not support concurrent kernel launches now.
481
+ static ur_shared_mutex KernelLaunchMutex;
482
+ std::scoped_lock<ur_shared_mutex> Guard (KernelLaunchMutex);
483
+
477
484
auto pfnKernelLaunch = getContext ()->urDdiTable .Enqueue .pfnKernelLaunch ;
478
485
479
486
if (nullptr == pfnKernelLaunch) {
You can’t perform that action at this time.
0 commit comments