rust-rd-agent/rd-agent-enum-iterator.patch
2024-05-01 14:18:32 -07:00

68 lines
2.4 KiB
Diff

diff --git a/src/report.rs b/src/report.rs
index 4d825fd9..cebdfd7f 100644
--- a/src/report.rs
+++ b/src/report.rs
@@ -2,7 +2,6 @@
use anyhow::{anyhow, bail, Result};
use chrono::prelude::*;
use crossbeam::channel::{self, select, Receiver, Sender};
-use enum_iterator::IntoEnumIterator;
use log::{debug, error, info, trace, warn};
use nix::sys::signal::{kill, Signal};
use nix::unistd::Pid;
@@ -266,7 +265,7 @@ impl UsageTracker {
};
us.usages.insert(ROOT_SLICE.into(), Default::default());
- for slice in Slice::into_enum_iter() {
+ for slice in enum_iterator::all::<Slice>() {
us.usages.insert(slice.name().into(), Default::default());
}
@@ -281,7 +280,7 @@ impl UsageTracker {
let (us, cpu_total) = read_system_usage(self.devnr)?;
usages.insert(ROOT_SLICE.into(), us);
- for slice in Slice::into_enum_iter() {
+ for slice in enum_iterator::all::<Slice>() {
usages.insert(
slice.name().to_string(),
read_cgroup_usage(slice.cgrp(), self.devnr),
diff --git a/src/slices.rs b/src/slices.rs
index 2053e7bb..b575cc8b 100644
--- a/src/slices.rs
+++ b/src/slices.rs
@@ -1,6 +1,5 @@
// Copyright (c) Facebook, Inc. and its affiliates.
use anyhow::{Context, Result};
-use enum_iterator::IntoEnumIterator;
use glob::glob;
use log::{debug, error, info, trace, warn};
use scan_fmt::scan_fmt;
@@ -246,7 +245,7 @@ pub fn apply_slices(knobs: &mut SliceKnobs, hashd_mem_size: u64, cfg: &Config) -
}
let mut updated = false;
- for slice in Slice::into_enum_iter() {
+ for slice in enum_iterator::all::<Slice>() {
let enforce_mem = slice_enforce_mem(&cfg.enforce, slice);
if !cfg.enforce.cpu && !enforce_mem && !cfg.enforce.io {
@@ -353,7 +352,7 @@ fn clear_one_slice(slice: Slice, ecfg: &EnforceConfig) -> Result<bool> {
pub fn clear_slices(ecfg: &EnforceConfig) -> Result<()> {
let mut updated = false;
- for slice in Slice::into_enum_iter() {
+ for slice in enum_iterator::all::<Slice>() {
let enforce_mem = slice_enforce_mem(ecfg, slice);
if !ecfg.cpu && !enforce_mem && !ecfg.io {
@@ -597,7 +596,7 @@ pub fn verify_and_fix_slices(
let recursive_mem_prot = cfg.memcg_recursive_prot();
- for slice in Slice::into_enum_iter() {
+ for slice in enum_iterator::all::<Slice>() {
let sk = knobs.slices.get(slice.name()).unwrap();
let path = slice.cgrp();