`vm list` shows VM's name
Bug: 404319069
Test: run ferrochrome and microdroid, and type `vm list`.
komodo:/apex/com.android.virt/bin # ./vm list
Running VMs: [
VirtualMachineDebugInfo {
name: "debian",
cid: 2048,
temporaryDirectory: "/data/misc/virtualizationservice/2048",
requesterUid: 10297,
requesterPid: 4179,
hostConsoleName: None,
},
VirtualMachineDebugInfo {
name: "VmRunApp",
cid: 2049,
temporaryDirectory: "/data/misc/virtualizationservice/2049",
requesterUid: 2000,
requesterPid: 8486,
hostConsoleName: None,
},
]
Change-Id: Iea1e4d7e7b57af19e5b79c71ff0457501ad24c80
diff --git a/android/virtmgr/src/aidl.rs b/android/virtmgr/src/aidl.rs
index 1c4c2eb..1e756eb 100644
--- a/android/virtmgr/src/aidl.rs
+++ b/android/virtmgr/src/aidl.rs
@@ -597,9 +597,10 @@
config: &VirtualMachineConfig,
) -> binder::Result<(VmContext, Cid, PathBuf)> {
const NUM_ATTEMPTS: usize = 5;
+ let name = get_name(config);
for _ in 0..NUM_ATTEMPTS {
- let vm_context = GLOBAL_SERVICE.allocateGlobalVmContext(requester_debug_pid)?;
+ let vm_context = GLOBAL_SERVICE.allocateGlobalVmContext(name, requester_debug_pid)?;
let cid = vm_context.getCid()? as Cid;
let temp_dir: PathBuf = vm_context.getTemporaryDirectory()?.into();
@@ -1053,6 +1054,14 @@
}
}
+/// Returns the name of the config
+fn get_name(config: &VirtualMachineConfig) -> &str {
+ match config {
+ VirtualMachineConfig::AppConfig(config) => &config.name,
+ VirtualMachineConfig::RawConfig(config) => &config.name,
+ }
+}
+
fn extract_vendor_hashtree_digest(config: &VirtualMachineConfig) -> Result<Option<Vec<u8>>> {
let VirtualMachineConfig::AppConfig(config) = config else {
return Ok(None);