pvmfw: Fix up cpu-map DT patching
Fix up some typos and minor bugs.
Bug: 284369518
Test: m && boot up protected vm with cpu-map nodes working
Change-Id: I2c6c196fa4dea126654225f7a54722fbeb973467
Signed-off-by: David Dai <davidai@google.com>
diff --git a/pvmfw/src/fdt.rs b/pvmfw/src/fdt.rs
index 47f4cdd..bd47ed7 100644
--- a/pvmfw/src/fdt.rs
+++ b/pvmfw/src/fdt.rs
@@ -234,7 +234,7 @@
break;
};
for m in 0..ClusterTopology::MAX_CORES_PER_CLUSTER {
- let name = CString::new(format!("core{n}")).unwrap();
+ let name = CString::new(format!("core{m}")).unwrap();
let Some(core) = cluster.subnode(&name)? else {
break;
};
@@ -273,13 +273,12 @@
if let Some(ref cpu_map) = cpu_map {
let phandle = cpu.get_phandle()?.ok_or(FdtError::NotFound)?;
- let (cluster, core) = cpu_map.get(&phandle).ok_or(FdtError::BadValue)?;
+ let (cluster, core_idx) = cpu_map.get(&phandle).ok_or(FdtError::BadValue)?;
let cluster = topology.clusters[*cluster].get_or_insert(Default::default());
- let mut core = cluster.cores[*core];
- if core.is_some() {
+ if cluster.cores[*core_idx].is_some() {
return Err(FdtError::BadValue);
}
- let _ = core.insert(idx);
+ cluster.cores[*core_idx] = Some(idx);
}
}