mirror of
https://github.com/containers/youki
synced 2024-05-10 09:36:13 +02:00
network controller should work on all systems
This commit is contained in:
parent
eff99222cb
commit
8ca20a3244
|
@ -48,7 +48,7 @@ jobs:
|
|||
test_cases=("default/default.t" "linux_cgroups_devices/linux_cgroups_devices.t" "linux_cgroups_hugetlb/linux_cgroups_hugetlb.t" "linux_cgroups_pids/linux_cgroups_pids.t", "linux_cgroups_memory/linux_cgroups_memory.t", "linux_cgroups_network/linux_cgroups_network.t")
|
||||
for case in "${test_cases[@]}"; do
|
||||
title="Running $case"
|
||||
if [ 0 -ne $(sudo RUNTIME=$GITHUB_WORKSPACE/target/x86_64-unknown-linux-gnu/debug/youki ./validation/$case | grep "not ok" | wc -l) ]; then
|
||||
if [ 0 -ne $(sudo RUST_BACKTRACE=1 RUNTIME=$GITHUB_WORKSPACE/target/x86_64-unknown-linux-gnu/debug/youki ./validation/$case | grep "not ok" | wc -l) ]; then
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
|
|
@ -69,10 +69,22 @@ impl Manager {
|
|||
}
|
||||
|
||||
fn get_subsystem_path(cgroup_path: &Path, subsystem: &str) -> anyhow::Result<PathBuf> {
|
||||
log::debug!("Get path for subsystem: {}", subsystem);
|
||||
let mount = Process::myself()?
|
||||
.mountinfo()?
|
||||
.into_iter()
|
||||
.find(|m| m.fs_type == "cgroup" && m.mount_point.ends_with(subsystem))
|
||||
.find(|m| {
|
||||
if m.fs_type == "cgroup" {
|
||||
// Some systems mount net_prio and net_cls in the same directory
|
||||
// other systems mount them in their own diretories. This
|
||||
// should handle both cases.
|
||||
if subsystem == "net_cls" || subsystem == "net_prio" {
|
||||
return m.mount_point.ends_with("net_cls,net_prio")
|
||||
|| m.mount_point.ends_with("net_prio,net_cls");
|
||||
}
|
||||
}
|
||||
m.mount_point.ends_with(subsystem)
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
let cgroup = Process::myself()?
|
||||
|
|
Loading…
Reference in New Issue