Prepare diced before microdroid_manager runs
microdroid_manager needs to access diced to get the per-VM secret that
it uses to encrypt/decrypt the instance disk. This is not trivial
because previously diced (and servicemanager it depends on) were not
bootstrap processes, which means they can start only after APEXes are
activated. However, microdroid_manager can't do that before the instance
disk is decrypted. So, there's a circular dependency between
microdroid_manager and diced.
This CL fixes the issue by making diced and servicemanager bootstrap
processes. They now can start before APEXes are activated. The start of
microdroid_manager is moved to after diced.
Bug: 214231981
Test: run microdroid
Change-Id: I8ada5324000f9731a5709982fbb45cbf101f94c6
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index 7f0b806..940094d 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -72,11 +72,11 @@
"apexd",
"debuggerd",
- "diced",
+ "diced.microdroid",
"keystore2_microdroid",
"linker",
"linkerconfig",
- "servicemanager",
+ "servicemanager.microdroid",
"tombstoned",
"cgroups.json",
"public.libraries.android.txt",