SWDEV-470008 - Fix AMD_SERIALIZE_KERNEL
- awaitCompletion code may do a endless spin wait for cases where we
dont submit a handler. One such case can be the hipExt*Launch API which
takes a stop event. In that case we optimize the stop event by attaching
a signal to the dispatch packet but dont submit a handler when we attach
the signal. That means if awaitCompletion() is called after that, we
would keep on waiting on command status on the host rather than simply
checking signal value.
Change-Id: Ie8bf175aeefa3f9e4299b1ae7ae9108dad67e283
[ROCm/clr commit: 561fb8a459]
Este cometimento está contido em:
1 ascendente
58d27f6f47
cometimento
bbef85714e
1 ficheiro modificado
+1
-1
@@ -388,7 +388,7 @@ void Command::enqueue() {
|
||||
|
||||
if ((queue_->device().settings().waitCommand_ && (type_ != 0)) ||
|
||||
((commandWaitBits_ & 0x2) != 0)) {
|
||||
awaitCompletion();
|
||||
queue_->finish();
|
||||
}
|
||||
|
||||
// set this queue status is active
|
||||
|
||||
Criar uma nova questão referindo esta
Bloquear um utilizador