mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-07-05 19:47:53 +00:00
runtime-rs: ch: Implement missing thread/pid APIs
Add implementations for the following `Hypervisor` trait methods which simply return the same details as the `get_vmm_master_tid()` method: - `get_thread_ids()` - `get_pids()` Fixes: #6438. Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
This commit is contained in:
parent
ce094ecdc2
commit
7da6d0a845
@ -28,6 +28,7 @@ use lazy_static::lazy_static;
|
|||||||
use nix::sched::{setns, CloneFlags};
|
use nix::sched::{setns, CloneFlags};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use serde_json::Value;
|
use serde_json::Value;
|
||||||
|
use std::collections::HashMap;
|
||||||
use std::convert::TryFrom;
|
use std::convert::TryFrom;
|
||||||
use std::fs::create_dir_all;
|
use std::fs::create_dir_all;
|
||||||
use std::os::unix::io::AsRawFd;
|
use std::os::unix::io::AsRawFd;
|
||||||
@ -676,7 +677,16 @@ impl CloudHypervisorInner {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn get_thread_ids(&self) -> Result<VcpuThreadIds> {
|
pub(crate) async fn get_thread_ids(&self) -> Result<VcpuThreadIds> {
|
||||||
Ok(VcpuThreadIds::default())
|
let mut vcpus = HashMap::new();
|
||||||
|
|
||||||
|
let vcpu = 0;
|
||||||
|
let thread_id = self.get_vmm_master_tid().await?;
|
||||||
|
|
||||||
|
vcpus.insert(vcpu, thread_id);
|
||||||
|
|
||||||
|
let vcpu_thread_ids = VcpuThreadIds { vcpus };
|
||||||
|
|
||||||
|
Ok(vcpu_thread_ids)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn cleanup(&self) -> Result<()> {
|
pub(crate) async fn cleanup(&self) -> Result<()> {
|
||||||
@ -688,7 +698,9 @@ impl CloudHypervisorInner {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn get_pids(&self) -> Result<Vec<u32>> {
|
pub(crate) async fn get_pids(&self) -> Result<Vec<u32>> {
|
||||||
Ok(Vec::<u32>::new())
|
let pid = self.get_vmm_master_tid().await?;
|
||||||
|
|
||||||
|
Ok(vec![pid])
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn get_vmm_master_tid(&self) -> Result<u32> {
|
pub(crate) async fn get_vmm_master_tid(&self) -> Result<u32> {
|
||||||
|
Loading…
Reference in New Issue
Block a user