@@ -4311,10 +4311,10 @@ pi_result piEnqueueMemBufferMap(pi_queue Queue, pi_mem Buffer,
4311
4311
ze_fence_handle_t ZeFence = nullptr ;
4312
4312
ze_event_handle_t ZeEvent = nullptr ;
4313
4313
4314
- // Lock automatically releases when this goes out of scope.
4315
- std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4316
-
4317
4314
if (Event) {
4315
+ // Lock automatically releases when this goes out of scope.
4316
+ std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4317
+
4318
4318
auto Res = createEventAndAssociateQueue (
4319
4319
Queue, Event, PI_COMMAND_TYPE_MEM_BUFFER_MAP, ZeCommandList);
4320
4320
if (Res != PI_SUCCESS)
@@ -4352,6 +4352,9 @@ pi_result piEnqueueMemBufferMap(pi_queue Queue, pi_mem Buffer,
4352
4352
return Buffer->addMapping (*RetMap, Offset, Size);
4353
4353
}
4354
4354
4355
+ // Lock automatically releases when this goes out of scope.
4356
+ std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4357
+
4355
4358
// For discrete devices we need a command list
4356
4359
if (auto Res = Queue->Device ->getAvailableCommandList (Queue, &ZeCommandList,
4357
4360
&ZeFence))
@@ -4406,10 +4409,10 @@ pi_result piEnqueueMemUnmap(pi_queue Queue, pi_mem MemObj, void *MappedPtr,
4406
4409
4407
4410
ze_event_handle_t ZeEvent = nullptr ;
4408
4411
4409
- // Lock automatically releases when this goes out of scope.
4410
- std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4411
-
4412
4412
if (Event) {
4413
+ // Lock automatically releases when this goes out of scope.
4414
+ std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4415
+
4413
4416
auto Res = createEventAndAssociateQueue (
4414
4417
Queue, Event, PI_COMMAND_TYPE_MEM_BUFFER_UNMAP, ZeCommandList);
4415
4418
if (Res != PI_SUCCESS)
@@ -4445,6 +4448,9 @@ pi_result piEnqueueMemUnmap(pi_queue Queue, pi_mem MemObj, void *MappedPtr,
4445
4448
return PI_SUCCESS;
4446
4449
}
4447
4450
4451
+ // Lock automatically releases when this goes out of scope.
4452
+ std::lock_guard<std::mutex> lock (Queue->PiQueueMutex );
4453
+
4448
4454
if (auto Res = Queue->Device ->getAvailableCommandList (Queue, &ZeCommandList,
4449
4455
&ZeFence))
4450
4456
return Res;
0 commit comments