Skip to content

Emulator 36.x Vulkan probe failure on Windows CI agent despite -gpu swiftshader #11062

Description

@simonrozsival

Summary

Since PR #10971 (merged March 19, 2026) bumped the Android emulator from 32.1.9 to 36.4.10, everyXamarin.Android-PR DevDiv build has exactly 1 out of ~17 Start emulator tasks failing with a Vulkan driver error on a Windows CI agent, despite -gpu swiftshader being passed.

Error

Emulator failed to start: [Vulkan Loader] ERROR | DRIVER:
windows_read_data_files_in_registry: Registry lookup failed to get ICD
manifest files. Possibly missing Vulkan driver?

Source: build-tools/scripts/TestApks.targets line 76 → StartAndroidEmulator task.

Impact

  • Frequency: 100% of builds since March 19 — always 1/17 emulator lanes
  • Affected lane:Windows > Tests > Debugging (on Android-1ESPT pool agents)
  • Severity: Non-blocking — pipeline continues via succeededWithIssues (configured in 983dc9142)
  • Other lanes: The remaining ~16 Start emulator tasks succeed, including other Windows lanes

Context

PR #10971 acknowledged this problem and added -gpu swiftshader to TestAvdExtraBootArgs:

<TestAvdExtraBootArgsCondition=" '$(TestAvdShowWindow)' == 'false' ">
-no-window -no-boot-anim -gpu swiftshader $(TestAvdExtraBootArgs)
</TestAvdExtraBootArgs>

This works for most agents but one Windows agent in the Android-1ESPT pool still fails — likely because emulator 36.x probes the Vulkan loader DLL before honoring -gpu swiftshader, and that agent lacks the Vulkan runtime entirely.

Possible fixes

  1. Reimage/update the failing agent in the Android-1ESPT pool
  2. Set ANDROID_EMU_VK_ICD=swiftshader environment variable before starting the emulator to skip the Vulkan ICD file probe entirely
  3. Add retry logic in StartAndroidEmulator.cs for Vulkan-related startup failures

Affected builds (sample)

Build IDResultDate
13702557partiallySucceeded2026-04-01
13701132partiallySucceeded2026-03-31
13704638failed2026-03-31
13701236partiallySucceeded2026-03-31

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions