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() {