diff options
-rw-r--r-- | Cargo.lock | 88 | ||||
-rw-r--r-- | Cargo.toml | 1 | ||||
-rw-r--r-- | src/mock.rs | 20 |
3 files changed, 109 insertions, 0 deletions
@@ -107,6 +107,12 @@ dependencies = [ ] [[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] name = "camino" version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -623,6 +629,7 @@ dependencies = [ "libbpf-rs 0.24.8", "libc", "plain", + "rand", "scx_rustland_core", "scx_utils", ] @@ -634,6 +641,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy 0.7.35", +] + +[[package]] name = "prettyplease" version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -668,6 +684,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" [[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha", + "rand_core", + "zerocopy 0.8.20", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a509b1a2ffbe92afab0e55c8fd99dea1c280e8171bd2d88682bb20bc41cbc2c" +dependencies = [ + "getrandom", + "zerocopy 0.8.20", +] + +[[package]] name = "redox_syscall" version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1181,3 +1228,44 @@ dependencies = [ "linux-raw-sys", "rustix", ] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde3bb8c68a8f3f1ed4ac9221aad6b10cece3e60a8e2ea54a6a2dec806d0084c" +dependencies = [ + "zerocopy-derive 0.8.20", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eea57037071898bf96a6da35fd626f4f27e9cee3ead2a6c703cf09d472b2e700" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] @@ -11,6 +11,7 @@ libc = "0.2.170" plain = "0.2.3" scx_utils = "1.0.11" scx_rustland_core = "2.2.8" +rand = "0.9.0" [build-dependencies] scx_rustland_core = "2.2.8" diff --git a/src/mock.rs b/src/mock.rs new file mode 100644 index 0000000..ac4fa75 --- /dev/null +++ b/src/mock.rs @@ -0,0 +1,20 @@ +use libc::rand; +use rand::Rng; + +trait KernelModule { + fn start_trace(pid: u64) {} + fn stop_trace(pid: u64) {} + fn read_consumption(pid: u64) -> u64 {} +} + +struct MockModule; + +impl KernelModule for MockModule { + fn start_trace(pid: u64) {} + + fn stop_trace(pid: u64) {} + + fn read_consumption(pid: u64) -> u64 { + rand::rng().random() + } +} |