Fixing flake-y host call CTS test.
diff --git a/runtime/src/iree/hal/cts/queue_host_call_test.h b/runtime/src/iree/hal/cts/queue_host_call_test.h
index fda974c..84527c1 100644
--- a/runtime/src/iree/hal/cts/queue_host_call_test.h
+++ b/runtime/src/iree/hal/cts/queue_host_call_test.h
@@ -367,6 +367,11 @@
IREE_HAL_WAIT_FLAG_DEFAULT)),
StatusIs(StatusCode::kAborted));
+ // NOTE: it's not guaranteed that all semaphores are updated atomically so
+ // it's possible for the wait to return and at least one of the semaphores to
+ // not be ready yet. We give a little time for the assignment to propagate.
+ std::this_thread::sleep_for(std::chrono::milliseconds(50));
+
// Query individual semaphores to verify they're in error state.
uint64_t value0 = 0;
EXPECT_THAT(Status(iree_hal_semaphore_query(
@@ -436,6 +441,11 @@
EXPECT_EQ(state.did_call, 1);
EXPECT_TRUE(state.wait_completed);
+ // NOTE: it's not guaranteed that all semaphores are updated atomically so
+ // it's possible for the wait to return and at least one of the semaphores to
+ // not be ready yet. We give a little time for the assignment to propagate.
+ std::this_thread::sleep_for(std::chrono::milliseconds(50));
+
// Query individual semaphores to verify they're in error state.
uint64_t value0 = 0;
EXPECT_THAT(Status(iree_hal_semaphore_query(