[INFO] cloning repository https://github.com/ayourtch/vppbench [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ayourtch/vppbench" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Fvppbench", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Fvppbench'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 096436d63877552f6d1ebf4a25048c4b8542959f [INFO] checking ayourtch/vppbench against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Fvppbench" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ayourtch/vppbench [INFO] finished tweaking git repo https://github.com/ayourtch/vppbench [INFO] tweaked toml for git repo https://github.com/ayourtch/vppbench written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ayourtch/vppbench on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ayourtch/vppbench already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/ayourtch/oside.git` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded mac_address v1.1.8 [INFO] [stderr] Downloaded typetag v0.2.20 [INFO] [stderr] Downloaded mopa v0.2.2 [INFO] [stderr] Downloaded generic-array v1.2.0 [INFO] [stderr] Downloaded uds v0.4.2 [INFO] [stderr] Downloaded criterion-plot v0.4.5 [INFO] [stderr] Downloaded recursive_array v0.1.3 [INFO] [stderr] Downloaded thiserror-no-std v2.0.2 [INFO] [stderr] Downloaded serde_cbor v0.11.2 [INFO] [stderr] Downloaded criterion v0.3.6 [INFO] [stderr] Downloaded typetag-impl v0.2.20 [INFO] [stderr] Downloaded array-init v2.1.0 [INFO] [stderr] Downloaded thiserror-impl-no-std v2.0.2 [INFO] [stderr] Downloaded linkme-impl v0.3.32 [INFO] [stderr] Downloaded linkme v0.3.32 [INFO] [stderr] Downloaded inventory v0.3.20 [INFO] [stderr] Downloaded binary_serde_macros v1.0.24 [INFO] [stderr] Downloaded binary_serde v1.0.24 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a11662093fe12f7e8d8b3037457214f7d1c81a20bdef2cae36cb8b4596b788c3 [INFO] running `Command { std: "docker" "start" "-a" "a11662093fe12f7e8d8b3037457214f7d1c81a20bdef2cae36cb8b4596b788c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a11662093fe12f7e8d8b3037457214f7d1c81a20bdef2cae36cb8b4596b788c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a11662093fe12f7e8d8b3037457214f7d1c81a20bdef2cae36cb8b4596b788c3", kill_on_drop: false }` [INFO] [stdout] a11662093fe12f7e8d8b3037457214f7d1c81a20bdef2cae36cb8b4596b788c3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 238fdb4c80db54cc730757296e97967b52889a95138130bd651848d75393d9e1 [INFO] running `Command { std: "docker" "start" "-a" "238fdb4c80db54cc730757296e97967b52889a95138130bd651848d75393d9e1", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Compiling linkme-impl v0.3.32 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Checking recursive_array v0.1.3 [INFO] [stderr] Checking array-init v2.1.0 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Checking inventory v0.3.20 [INFO] [stderr] Checking vcell v0.1.3 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking mopa v0.2.2 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking csv-core v0.1.12 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking half v1.8.3 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking memfd v0.6.4 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking uds v0.4.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking criterion-plot v0.4.5 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking mac_address v1.1.8 [INFO] [stderr] Compiling thiserror-impl-no-std v2.0.2 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking thiserror-no-std v2.0.2 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling binary_serde_macros v1.0.24 [INFO] [stderr] Compiling typetag-impl v0.2.20 [INFO] [stderr] Compiling oside-derive v0.1.0 (https://github.com/ayourtch/oside.git#0dfbd30a) [INFO] [stderr] Checking binary_serde v1.0.24 [INFO] [stderr] Checking memif v0.1.0 (/opt/rustwide/workdir/memif) [INFO] [stdout] warning: unused import: `binary_serde_bitfield` [INFO] [stdout] --> memif/src/lib.rs:1:45 [INFO] [stdout] | [INFO] [stdout] 1 | use binary_serde::{BinarySerde, Endianness, binary_serde_bitfield}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnixDatagram` and `UnixListener` [INFO] [stdout] --> memif/src/lib.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use std::os::unix::net::{UnixDatagram, UnixListener}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Context` [INFO] [stdout] --> memif/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use anyhow::Context; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> memif/src/lib.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> memif/src/lib.rs:761:5 [INFO] [stdout] | [INFO] [stdout] 761 | 'outer: while count > 0 && ns > 0 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `nix::sys::memfd::MemFdCreateFlag`: Use `MFdFlags instead` [INFO] [stdout] --> memif/src/lib.rs:276:52 [INFO] [stdout] | [INFO] [stdout] 276 | let mfd = memfd::memfd_create(name, memfd::MemFdCreateFlag::MFD_ALLOW_SEALING)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nix::sys::eventfd::eventfd`: Use EventFd::from_value_and_flags() instead [INFO] [stdout] --> memif/src/lib.rs:499:41 [INFO] [stdout] | [INFO] [stdout] 499 | let int_fd = nix::sys::eventfd::eventfd(0, nix::sys::eventfd::EfdFlags::EFD_NONBLOCK)?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking linkme v0.3.32 [INFO] [stdout] warning: unused import: `binary_serde_bitfield` [INFO] [stdout] --> memif/src/lib.rs:1:45 [INFO] [stdout] | [INFO] [stdout] 1 | use binary_serde::{BinarySerde, Endianness, binary_serde_bitfield}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnixDatagram` and `UnixListener` [INFO] [stdout] --> memif/src/lib.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use std::os::unix::net::{UnixDatagram, UnixListener}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Context` [INFO] [stdout] --> memif/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use anyhow::Context; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> memif/src/lib.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> memif/src/lib.rs:761:5 [INFO] [stdout] | [INFO] [stdout] 761 | 'outer: while count > 0 && ns > 0 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> memif/src/lib.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let name = CString::new("memif region 0")?; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 318 | Ack => { [INFO] [stdout] | --- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 323 | Hello(x) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 329 | Init(x) => { [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 335 | AddRegion(x) => { [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 378 | MemifMsgType::None => return None, [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 379 | MemifMsgType::Hello => MemifMsg::Hello( [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 382 | MemifMsgType::Init => MemifMsg::Init( [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 385 | MemifMsgType::Ack => MemifMsg::Ack, [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ ...and 5 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ring_count` [INFO] [stdout] --> memif/src/lib.rs:512:9 [INFO] [stdout] | [INFO] [stdout] 512 | let ring_count = if typ == MemifRingType::S2m { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ring_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `slot` is never read [INFO] [stdout] --> memif/src/lib.rs:594:20 [INFO] [stdout] | [INFO] [stdout] 594 | let mut slot = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `nix::sys::memfd::MemFdCreateFlag`: Use `MFdFlags instead` [INFO] [stdout] --> memif/src/lib.rs:276:52 [INFO] [stdout] | [INFO] [stdout] 276 | let mfd = memfd::memfd_create(name, memfd::MemFdCreateFlag::MFD_ALLOW_SEALING)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nix::sys::eventfd::eventfd`: Use EventFd::from_value_and_flags() instead [INFO] [stdout] --> memif/src/lib.rs:499:41 [INFO] [stdout] | [INFO] [stdout] 499 | let int_fd = nix::sys::eventfd::eventfd(0, nix::sys::eventfd::EfdFlags::EFD_NONBLOCK)?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:707:9 [INFO] [stdout] | [INFO] [stdout] 707 | x => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:763:30 [INFO] [stdout] | [INFO] [stdout] 763 | let saved_next_buf = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:778:33 [INFO] [stdout] | [INFO] [stdout] 778 | let b0_desc_index = unsafe { mq.next_buf.get() } as u16; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:810:47 [INFO] [stdout] | [INFO] [stdout] 810 | let next_desc_index = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_out_len` [INFO] [stdout] --> memif/src/lib.rs:762:13 [INFO] [stdout] | [INFO] [stdout] 762 | let saved_out_len = out.len(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_out_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:852:23 [INFO] [stdout] | [INFO] [stdout] 852 | let mq_next_buf = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:868:9 [INFO] [stdout] | [INFO] [stdout] 868 | unsafe { mq.next_buf.set(mq_next_buf + 1) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> memif/src/lib.rs:963:9 [INFO] [stdout] | [INFO] [stdout] 963 | let mut last_slot = if conn.is_master { [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgHello` is more private than the item `MemifMsg::Hello::0` [INFO] [stdout] --> memif/src/lib.rs:188:11 [INFO] [stdout] | [INFO] [stdout] 188 | Hello(MemifMsgHello), [INFO] [stdout] | ^^^^^^^^^^^^^ field `MemifMsg::Hello::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgHello` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:84:1 [INFO] [stdout] | [INFO] [stdout] 84 | struct MemifMsgHello { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgInit` is more private than the item `MemifMsg::Init::0` [INFO] [stdout] --> memif/src/lib.rs:189:10 [INFO] [stdout] | [INFO] [stdout] 189 | Init(MemifMsgInit), [INFO] [stdout] | ^^^^^^^^^^^^ field `MemifMsg::Init::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgInit` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | struct MemifMsgInit { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgAddRegion` is more private than the item `MemifMsg::AddRegion::0` [INFO] [stdout] --> memif/src/lib.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 191 | AddRegion(MemifMsgAddRegion), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field `MemifMsg::AddRegion::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgAddRegion` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | struct MemifMsgAddRegion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgAddRing` is more private than the item `MemifMsg::AddRing::0` [INFO] [stdout] --> memif/src/lib.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | AddRing(MemifMsgAddRing), [INFO] [stdout] | ^^^^^^^^^^^^^^^ field `MemifMsg::AddRing::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgAddRing` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | struct MemifMsgAddRing { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgConnect` is more private than the item `MemifMsg::Connect::0` [INFO] [stdout] --> memif/src/lib.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | Connect(MemifMsgConnect), [INFO] [stdout] | ^^^^^^^^^^^^^^^ field `MemifMsg::Connect::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgConnect` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:145:1 [INFO] [stdout] | [INFO] [stdout] 145 | struct MemifMsgConnect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgConnected` is more private than the item `MemifMsg::Connected::0` [INFO] [stdout] --> memif/src/lib.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | Connected(MemifMsgConnected), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field `MemifMsg::Connected::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgConnected` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | struct MemifMsgConnected { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgDisconnect` is more private than the item `MemifMsg::Disconnect::0` [INFO] [stdout] --> memif/src/lib.rs:195:16 [INFO] [stdout] | [INFO] [stdout] 195 | Disconnect(MemifMsgDisconnect), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ field `MemifMsg::Disconnect::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgDisconnect` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:167:1 [INFO] [stdout] | [INFO] [stdout] 167 | struct MemifMsgDisconnect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMIF_CACHELINE_SIZE` is never used [INFO] [stdout] --> memif/src/lib.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const MEMIF_CACHELINE_SIZE: usize = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMIF_VERSION` is never used [INFO] [stdout] --> memif/src/lib.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const MEMIF_VERSION: u16 = (MEMIF_VERSION_MAJOR << 8) | MEMIF_VERSION_MINOR; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `int_count` is never read [INFO] [stdout] --> memif/src/lib.rs:243:5 [INFO] [stdout] | [INFO] [stdout] 235 | struct MemifQueue { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 243 | int_count: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `desc_index` and `flags` are never read [INFO] [stdout] --> memif/src/lib.rs:716:5 [INFO] [stdout] | [INFO] [stdout] 715 | pub struct MemifBuffer<'a> { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 716 | desc_index: u16, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 719 | flags: u8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MemifBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `memif_buffer_enq_tx` is never used [INFO] [stdout] --> memif/src/lib.rs:838:4 [INFO] [stdout] | [INFO] [stdout] 838 | fn memif_buffer_enq_tx( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> memif/src/lib.rs:550:5 [INFO] [stdout] | [INFO] [stdout] 550 | memif_init_queues(conn, MemifRingType::S2m); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 550 | let _ = memif_init_queues(conn, MemifRingType::S2m); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> memif/src/lib.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | memif_init_queues(conn, MemifRingType::M2s); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 551 | let _ = memif_init_queues(conn, MemifRingType::M2s); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> memif/src/lib.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let name = CString::new("memif region 0")?; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 318 | Ack => { [INFO] [stdout] | --- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 323 | Hello(x) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 329 | Init(x) => { [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 335 | AddRegion(x) => { [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 366 | x => unimplemented!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 378 | MemifMsgType::None => return None, [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 379 | MemifMsgType::Hello => MemifMsg::Hello( [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 382 | MemifMsgType::Init => MemifMsg::Init( [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 385 | MemifMsgType::Ack => MemifMsg::Ack, [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ ...and 5 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | x => return None, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ring_count` [INFO] [stdout] --> memif/src/lib.rs:512:9 [INFO] [stdout] | [INFO] [stdout] 512 | let ring_count = if typ == MemifRingType::S2m { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ring_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `slot` is never read [INFO] [stdout] --> memif/src/lib.rs:594:20 [INFO] [stdout] | [INFO] [stdout] 594 | let mut slot = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> memif/src/lib.rs:707:9 [INFO] [stdout] | [INFO] [stdout] 707 | x => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:763:30 [INFO] [stdout] | [INFO] [stdout] 763 | let saved_next_buf = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:778:33 [INFO] [stdout] | [INFO] [stdout] 778 | let b0_desc_index = unsafe { mq.next_buf.get() } as u16; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:810:47 [INFO] [stdout] | [INFO] [stdout] 810 | let next_desc_index = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_out_len` [INFO] [stdout] --> memif/src/lib.rs:762:13 [INFO] [stdout] | [INFO] [stdout] 762 | let saved_out_len = out.len(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_out_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:852:23 [INFO] [stdout] | [INFO] [stdout] 852 | let mq_next_buf = unsafe { mq.next_buf.get() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> memif/src/lib.rs:868:9 [INFO] [stdout] | [INFO] [stdout] 868 | unsafe { mq.next_buf.set(mq_next_buf + 1) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> memif/src/lib.rs:963:9 [INFO] [stdout] | [INFO] [stdout] 963 | let mut last_slot = if conn.is_master { [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgHello` is more private than the item `MemifMsg::Hello::0` [INFO] [stdout] --> memif/src/lib.rs:188:11 [INFO] [stdout] | [INFO] [stdout] 188 | Hello(MemifMsgHello), [INFO] [stdout] | ^^^^^^^^^^^^^ field `MemifMsg::Hello::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgHello` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:84:1 [INFO] [stdout] | [INFO] [stdout] 84 | struct MemifMsgHello { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgInit` is more private than the item `MemifMsg::Init::0` [INFO] [stdout] --> memif/src/lib.rs:189:10 [INFO] [stdout] | [INFO] [stdout] 189 | Init(MemifMsgInit), [INFO] [stdout] | ^^^^^^^^^^^^ field `MemifMsg::Init::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgInit` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | struct MemifMsgInit { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgAddRegion` is more private than the item `MemifMsg::AddRegion::0` [INFO] [stdout] --> memif/src/lib.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 191 | AddRegion(MemifMsgAddRegion), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field `MemifMsg::AddRegion::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgAddRegion` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | struct MemifMsgAddRegion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgAddRing` is more private than the item `MemifMsg::AddRing::0` [INFO] [stdout] --> memif/src/lib.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | AddRing(MemifMsgAddRing), [INFO] [stdout] | ^^^^^^^^^^^^^^^ field `MemifMsg::AddRing::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgAddRing` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | struct MemifMsgAddRing { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgConnect` is more private than the item `MemifMsg::Connect::0` [INFO] [stdout] --> memif/src/lib.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | Connect(MemifMsgConnect), [INFO] [stdout] | ^^^^^^^^^^^^^^^ field `MemifMsg::Connect::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgConnect` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:145:1 [INFO] [stdout] | [INFO] [stdout] 145 | struct MemifMsgConnect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgConnected` is more private than the item `MemifMsg::Connected::0` [INFO] [stdout] --> memif/src/lib.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | Connected(MemifMsgConnected), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field `MemifMsg::Connected::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgConnected` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | struct MemifMsgConnected { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `MemifMsgDisconnect` is more private than the item `MemifMsg::Disconnect::0` [INFO] [stdout] --> memif/src/lib.rs:195:16 [INFO] [stdout] | [INFO] [stdout] 195 | Disconnect(MemifMsgDisconnect), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ field `MemifMsg::Disconnect::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `MemifMsgDisconnect` is only usable at visibility `pub(crate)` [INFO] [stdout] --> memif/src/lib.rs:167:1 [INFO] [stdout] | [INFO] [stdout] 167 | struct MemifMsgDisconnect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMIF_CACHELINE_SIZE` is never used [INFO] [stdout] --> memif/src/lib.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const MEMIF_CACHELINE_SIZE: usize = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEMIF_VERSION` is never used [INFO] [stdout] --> memif/src/lib.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const MEMIF_VERSION: u16 = (MEMIF_VERSION_MAJOR << 8) | MEMIF_VERSION_MINOR; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `int_count` is never read [INFO] [stdout] --> memif/src/lib.rs:243:5 [INFO] [stdout] | [INFO] [stdout] 235 | struct MemifQueue { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 243 | int_count: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `desc_index` and `flags` are never read [INFO] [stdout] --> memif/src/lib.rs:716:5 [INFO] [stdout] | [INFO] [stdout] 715 | pub struct MemifBuffer<'a> { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 716 | desc_index: u16, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 719 | flags: u8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MemifBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `memif_buffer_enq_tx` is never used [INFO] [stdout] --> memif/src/lib.rs:838:4 [INFO] [stdout] | [INFO] [stdout] 838 | fn memif_buffer_enq_tx( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> memif/src/lib.rs:550:5 [INFO] [stdout] | [INFO] [stdout] 550 | memif_init_queues(conn, MemifRingType::S2m); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 550 | let _ = memif_init_queues(conn, MemifRingType::S2m); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> memif/src/lib.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | memif_init_queues(conn, MemifRingType::M2s); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 551 | let _ = memif_init_queues(conn, MemifRingType::M2s); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking serde v1.0.219 [INFO] [stderr] Checking erased-serde v0.4.6 [INFO] [stderr] Checking generic-array v1.2.0 [INFO] [stderr] Checking serde_json v1.0.140 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking csv v1.3.1 [INFO] [stderr] Checking serde_cbor v0.11.2 [INFO] [stderr] Checking typetag v0.2.20 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking oside v0.1.0 (https://github.com/ayourtch/oside.git#0dfbd30a) [INFO] [stderr] Checking criterion v0.3.6 [INFO] [stderr] Checking echo-client v0.1.0 (/opt/rustwide/workdir/echo-client) [INFO] [stderr] Checking echo-sender v0.1.0 (/opt/rustwide/workdir/echo-sender) [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-client/src/main.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-client/src/main.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-sender/src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> echo-client/src/main.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 12 | / loop { [INFO] [stdout] 13 | | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] 14 | | /* [INFO] [stdout] 15 | | let ring = memif_get_ring(&conn, MemifRingType::S2m, 0); [INFO] [stdout] ... | [INFO] [stdout] 114 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 115 | [INFO] [stdout] 116 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> echo-client/src/main.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 12 | / loop { [INFO] [stdout] 13 | | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] 14 | | /* [INFO] [stdout] 15 | | let ring = memif_get_ring(&conn, MemifRingType::S2m, 0); [INFO] [stdout] ... | [INFO] [stdout] 114 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 115 | [INFO] [stdout] 116 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-client/src/main.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | let mut conn = connect_to_memif(socket_path).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-client/src/main.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | let mut pkts = memif_rx_burst(&conn, 0, 32); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arp` [INFO] [stdout] --> echo-client/src/main.rs:34:25 [INFO] [stdout] | [INFO] [stdout] 34 | if let Some(arp) = sca.get_layer(ARP!()) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `geneve` [INFO] [stdout] --> echo-client/src/main.rs:56:32 [INFO] [stdout] | [INFO] [stdout] 56 | } else if let Some(geneve) = sca.get_layer(GENEVE!()) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_geneve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icmpecho` [INFO] [stdout] --> echo-client/src/main.rs:81:32 [INFO] [stdout] | [INFO] [stdout] 81 | } else if let Some(icmpecho) = sca.get_layer(Echo!()) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_icmpecho` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-sender/src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oside::protocols::all::*` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | use oside::protocols::all::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oside::protocols::geneve::*` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | use oside::protocols::geneve::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oside::*` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | use oside::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-client/src/main.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | let mut conn = connect_to_memif(socket_path).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-client/src/main.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | let mut pkts = memif_rx_burst(&conn, 0, 32); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arp` [INFO] [stdout] --> echo-client/src/main.rs:34:25 [INFO] [stdout] | [INFO] [stdout] 34 | if let Some(arp) = sca.get_layer(ARP!()) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `geneve` [INFO] [stdout] --> echo-client/src/main.rs:56:32 [INFO] [stdout] | [INFO] [stdout] 56 | } else if let Some(geneve) = sca.get_layer(GENEVE!()) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_geneve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icmpecho` [INFO] [stdout] --> echo-client/src/main.rs:81:32 [INFO] [stdout] | [INFO] [stdout] 81 | } else if let Some(icmpecho) = sca.get_layer(Echo!()) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_icmpecho` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> echo-client/src/main.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 13 | let _ = memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> echo-client/src/main.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 13 | let _ = memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> echo-sender/src/main.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 91 | / loop { [INFO] [stdout] 92 | | [INFO] [stdout] 93 | | [INFO] [stdout] 94 | | let serializable = SerializableInstant::now(); [INFO] [stdout] ... | [INFO] [stdout] 191 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 192 | [INFO] [stdout] 193 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/src/main.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | let mut conn = connect_to_memif_id(socket_path, 1).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/src/main.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut pkts = memif_rx_burst(&conn, 0, 32); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arp` [INFO] [stdout] --> echo-sender/src/main.rs:141:25 [INFO] [stdout] | [INFO] [stdout] 141 | if let Some(arp) = sca.get_layer(ARP!()) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icmpecho` [INFO] [stdout] --> echo-sender/src/main.rs:164:29 [INFO] [stdout] | [INFO] [stdout] 164 | if let Some(icmpecho) = sca.get_layer(EchoReply!()) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_icmpecho` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elapsed` [INFO] [stdout] --> echo-sender/src/main.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | let elapsed = Instant::now().duration_since(reconstructed_instant); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> echo-sender/src/main.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 119 | let _ = memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> echo-sender/src/main.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 91 | / loop { [INFO] [stdout] 92 | | [INFO] [stdout] 93 | | [INFO] [stdout] 94 | | let serializable = SerializableInstant::now(); [INFO] [stdout] ... | [INFO] [stdout] 191 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 192 | [INFO] [stdout] 193 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/src/main.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | let mut conn = connect_to_memif_id(socket_path, 1).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/src/main.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut pkts = memif_rx_burst(&conn, 0, 32); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arp` [INFO] [stdout] --> echo-sender/src/main.rs:141:25 [INFO] [stdout] | [INFO] [stdout] 141 | if let Some(arp) = sca.get_layer(ARP!()) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icmpecho` [INFO] [stdout] --> echo-sender/src/main.rs:164:29 [INFO] [stdout] | [INFO] [stdout] 164 | if let Some(icmpecho) = sca.get_layer(EchoReply!()) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_icmpecho` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elapsed` [INFO] [stdout] --> echo-sender/src/main.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | let elapsed = Instant::now().duration_since(reconstructed_instant); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | let mut conn = connect_to_memif_id(socket_path, 1).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | let mut packet_count = 0; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | let mut last_instant = Instant::now(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | let mut pkts = memif_rx_burst(&state.conn, 0, 32); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arp` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:154:25 [INFO] [stdout] | [INFO] [stdout] 154 | if let Some(arp) = sca.get_layer(ARP!()) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icmpecho` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:177:29 [INFO] [stdout] | [INFO] [stdout] 177 | if let Some(icmpecho) = sca.get_layer(EchoReply!()) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_icmpecho` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> echo-sender/src/main.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 119 | let _ = memif_refill_queue(&conn, 0, 65535, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elapsed` [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:182:8 [INFO] [stdout] | [INFO] [stdout] 182 | let elapsed = Instant::now().duration_since(reconstructed_instant); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> echo-sender/benches/rtt_benchmark.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | memif_refill_queue(&state.conn, 0, 65535, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 132 | let _ = memif_refill_queue(&state.conn, 0, 65535, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.58s [INFO] running `Command { std: "docker" "inspect" "238fdb4c80db54cc730757296e97967b52889a95138130bd651848d75393d9e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "238fdb4c80db54cc730757296e97967b52889a95138130bd651848d75393d9e1", kill_on_drop: false }` [INFO] [stdout] 238fdb4c80db54cc730757296e97967b52889a95138130bd651848d75393d9e1