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]
Tento commit je obsažen v:
Saleel Kudchadker
2024-06-27 01:09:31 +00:00
rodič 58d27f6f47
revize bbef85714e
+1 -1
Zobrazit soubor
@@ -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