Make append and setLastQueuedCommand atomic

Two threads can enqueue to the same HostQueue (HostQueue::enqueue)
and result in last queued command being the first one reachine queue_.enqueue

NOTE: Temporarly make setLastQueuedCommand empty function to pass the build

Change-Id: Id09c3a28d184986f52b2ec86a2f6a18c40df1f0b
Этот коммит содержится в:
Christophe Paquot
2020-07-10 08:32:15 -07:00
коммит произвёл Saleel Kudchadker
родитель 453ea922a7
Коммит 3d15a1e291
3 изменённых файлов: 11 добавлений и 16 удалений
-3
Просмотреть файл
@@ -258,9 +258,6 @@ void Command::enqueue() {
ClPrint(LOG_DEBUG, LOG_CMD, "command is enqueued: %p", this);
queue_->append(*this);
if (IS_HIP) {
queue_->setLastQueuedCommand(this);
}
queue_->flush();
if ((queue_->device().settings().waitCommand_ && (type_ != 0)) ||
((commandWaitBits_ & 0x2) != 0)) {