1*bb4ee6a4SAndroid Build Coastguard Worker# Hypervisor Support 2*bb4ee6a4SAndroid Build Coastguard Worker 3*bb4ee6a4SAndroid Build Coastguard WorkerMultiple hypervisor backends are supported. See 4*bb4ee6a4SAndroid Build Coastguard Worker[Advanced Usage](running_crosvm/advanced_usage.md#hypervisor) for overriding the default backend. 5*bb4ee6a4SAndroid Build Coastguard Worker 6*bb4ee6a4SAndroid Build Coastguard WorkerHypervisors added to crosvm must meet the following requirements: 7*bb4ee6a4SAndroid Build Coastguard Worker 8*bb4ee6a4SAndroid Build Coastguard Worker- Hypervisor code must be buildable in crosvm upstream. 9*bb4ee6a4SAndroid Build Coastguard Worker - Within reason, crosvm maintainers will ensure the hypervisor's code continues to build. 10*bb4ee6a4SAndroid Build Coastguard Worker- Hypervisors are not required to be tested upstream. 11*bb4ee6a4SAndroid Build Coastguard Worker - We can't require testing upstream because some hypervisors require specialized hardware. 12*bb4ee6a4SAndroid Build Coastguard Worker - When not tested upstream, the hypervisor's maintainers are expected to test it downstream. If a 13*bb4ee6a4SAndroid Build Coastguard Worker change to crosvm breaks something downstream, then the hypervisor's maintainers are expected to 14*bb4ee6a4SAndroid Build Coastguard Worker supply the fix and can't expect a revert of the culprit change to be accepted upstream. 15*bb4ee6a4SAndroid Build Coastguard Worker 16*bb4ee6a4SAndroid Build Coastguard Worker## KVM 17*bb4ee6a4SAndroid Build Coastguard Worker 18*bb4ee6a4SAndroid Build Coastguard Worker- Platforms: Linux 19*bb4ee6a4SAndroid Build Coastguard Worker- Tested upstream: yes 20*bb4ee6a4SAndroid Build Coastguard Worker 21*bb4ee6a4SAndroid Build Coastguard WorkerKVM is crosvm's preferred hypervisor for Linux. 22*bb4ee6a4SAndroid Build Coastguard Worker 23*bb4ee6a4SAndroid Build Coastguard Worker## WHPX 24*bb4ee6a4SAndroid Build Coastguard Worker 25*bb4ee6a4SAndroid Build Coastguard Worker- Platforms: Windows 26*bb4ee6a4SAndroid Build Coastguard Worker- Tested upstream: no 27*bb4ee6a4SAndroid Build Coastguard Worker- Contacts: [email protected] 28*bb4ee6a4SAndroid Build Coastguard Worker 29*bb4ee6a4SAndroid Build Coastguard Worker## HAXM 30*bb4ee6a4SAndroid Build Coastguard Worker 31*bb4ee6a4SAndroid Build Coastguard Worker- Platforms: Windows 32*bb4ee6a4SAndroid Build Coastguard Worker- Tested upstream: no 33*bb4ee6a4SAndroid Build Coastguard Worker- Contacts: [email protected] 34*bb4ee6a4SAndroid Build Coastguard Worker 35*bb4ee6a4SAndroid Build Coastguard Worker## Android Specific 36*bb4ee6a4SAndroid Build Coastguard Worker 37*bb4ee6a4SAndroid Build Coastguard WorkerThe hypervisors in this section are used as backends of the 38*bb4ee6a4SAndroid Build Coastguard Worker[Android Virtualization Framework](https://source.android.com/docs/core/virtualization). 39*bb4ee6a4SAndroid Build Coastguard Worker 40*bb4ee6a4SAndroid Build Coastguard Worker### Geniezone 41*bb4ee6a4SAndroid Build Coastguard Worker 42*bb4ee6a4SAndroid Build Coastguard Worker- Platforms: Linux, aarch64 only 43*bb4ee6a4SAndroid Build Coastguard Worker- Tested upstream: no 44*bb4ee6a4SAndroid Build Coastguard Worker- Contacts: [email protected], [email protected] 45*bb4ee6a4SAndroid Build Coastguard Worker 46*bb4ee6a4SAndroid Build Coastguard Worker### Gunyah 47*bb4ee6a4SAndroid Build Coastguard Worker 48*bb4ee6a4SAndroid Build Coastguard Worker- Platforms: Linux, aarch64 only 49*bb4ee6a4SAndroid Build Coastguard Worker- Tested upstream: no 50*bb4ee6a4SAndroid Build Coastguard Worker- Contacts: [email protected], [email protected], [email protected], 51*bb4ee6a4SAndroid Build Coastguard Worker [email protected] 52