Skip to content

Fix deadlock in GREYRemoteExecutor by stopping run loop directly from background thread. - #2170

Open
copybara-service[bot] wants to merge 1 commit into
earlgrey2from
test_934944984
Open

Fix deadlock in GREYRemoteExecutor by stopping run loop directly from background thread.#2170
copybara-service[bot] wants to merge 1 commit into
earlgrey2from
test_934944984

Conversation

@copybara-service

@copybara-service copybara-service Bot commented Jun 22, 2026

Copy link
Copy Markdown

Fix deadlock in GREYRemoteExecutor by stopping run loop directly from background thread.

Previously, the runner attempted to unblock the main thread by dispatching a block to the main queue that calls CFRunLoopStop. However, when the main thread is spinning in CFRunLoopRun, blocks dispatched to the main queue are not processed. We now call CFRunLoopStop(mainRunLoop) directly from the background thread targeting the main run loop.

… background thread.

Previously, the runner attempted to unblock the main thread by dispatching a block to the main queue that calls CFRunLoopStop. However, when the main thread is spinning in CFRunLoopRun, blocks dispatched to the main queue are not processed. We now call CFRunLoopStop(mainRunLoop) directly from the background thread targeting the main run loop.

PiperOrigin-RevId: 934944984
@copybara-service copybara-service Bot changed the title Internal Commit Uploaded Fix deadlock in GREYRemoteExecutor by stopping run loop directly from background thread. Jun 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant