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
This commit is contained in:
Christophe Paquot
2020-07-10 08:32:15 -07:00
committed by Saleel Kudchadker
parent 453ea922a7
commit 3d15a1e291
3 changed files with 11 additions and 16 deletions
-3
View File
@@ -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)) {