Add death reasons for microdroid failures
Bug: 220071963
Test: build
Change-Id: I0462e728663beacc2642d8e80407c15d8834c77e
diff --git a/virtualizationservice/aidl/android/system/virtualizationservice/DeathReason.aidl b/virtualizationservice/aidl/android/system/virtualizationservice/DeathReason.aidl
index 7b80fc9..577e868 100644
--- a/virtualizationservice/aidl/android/system/virtualizationservice/DeathReason.aidl
+++ b/virtualizationservice/aidl/android/system/virtualizationservice/DeathReason.aidl
@@ -42,4 +42,14 @@
BOOTLOADER_PUBLIC_KEY_MISMATCH = 9,
/** The bootloader failed to verify the VM because the instance image changed. */
BOOTLOADER_INSTANCE_IMAGE_CHANGED = 10,
+ /** The microdroid failed to connect to VirtualizationService's RPC server. */
+ MICRODROID_FAILED_TO_CONNECT_TO_VIRTUALIZATION_SERVICE = 11,
+ /** The payload for microdroid is changed. */
+ MICRODROID_PAYLOAD_HAS_CHANGED = 12,
+ /** The microdroid failed to verify given payload APK. */
+ MICRODROID_PAYLOAD_VERIFICATION_FAILED = 13,
+ /** The VM config for microdroid is invalid (e.g. missing tasks). */
+ MICRODROID_INVALID_PAYLOAD_CONFIG = 14,
+ /** There was a runtime error while running microdroid manager. */
+ MICRODROID_UNKNOWN_RUNTIME_ERROR = 15,
}
diff --git a/virtualizationservice/src/crosvm.rs b/virtualizationservice/src/crosvm.rs
index b184dca..fcc09c6 100644
--- a/virtualizationservice/src/crosvm.rs
+++ b/virtualizationservice/src/crosvm.rs
@@ -276,6 +276,19 @@
"BOOTLOADER_INSTANCE_IMAGE_CHANGED" => {
return DeathReason::BOOTLOADER_INSTANCE_IMAGE_CHANGED
}
+ "MICRODROID_FAILED_TO_CONNECT_TO_VIRTUALIZATION_SERVICE" => {
+ return DeathReason::MICRODROID_FAILED_TO_CONNECT_TO_VIRTUALIZATION_SERVICE
+ }
+ "MICRODROID_PAYLOAD_HAS_CHANGED" => return DeathReason::MICRODROID_PAYLOAD_HAS_CHANGED,
+ "MICRODROID_PAYLOAD_VERIFICATION_FAILED" => {
+ return DeathReason::MICRODROID_PAYLOAD_VERIFICATION_FAILED
+ }
+ "MICRODROID_INVALID_PAYLOAD_CONFIG" => {
+ return DeathReason::MICRODROID_INVALID_PAYLOAD_CONFIG
+ }
+ "MICRODROID_UNKNOWN_RUNTIME_ERROR" => {
+ return DeathReason::MICRODROID_UNKNOWN_RUNTIME_ERROR
+ }
_ => {}
}
match status.code() {