[INFO] fetching crate esp-p4-eth 0.1.0...
[INFO] testing esp-p4-eth-0.1.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate esp-p4-eth 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate esp-p4-eth 0.1.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate esp-p4-eth 0.1.0
[INFO] tweaked toml for crates.io crate esp-p4-eth 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate esp-p4-eth 0.1.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate esp-p4-eth 0.1.0 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:245:12
[INFO] [stderr]     |
[INFO] [stderr] 245 | homepage = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 250 | repository = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |              ---------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf
[INFO] running `Command { std: "docker" "start" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:245:12
[INFO] [stderr]     |
[INFO] [stderr] 245 | homepage = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 250 | repository = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |              ---------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 1 warning
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling heapless v0.9.2
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling embedded-io v0.7.1
[INFO] [stderr]    Compiling embassy-time-driver v0.2.2
[INFO] [stderr]    Compiling embassy-time-queue-utils v0.3.0
[INFO] [stderr]    Compiling embedded-io-async v0.6.1
[INFO] [stderr]    Compiling embassy-executor-timer-queue v0.1.0
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling embedded-hal-async v1.0.0
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling embassy-sync v0.8.0
[INFO] [stderr]    Compiling embedded-hal v1.0.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling embedded-io v0.6.1
[INFO] [stderr]    Compiling smoltcp v0.13.0
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling embassy-sync v0.7.2
[INFO] [stderr]    Compiling embedded-io-async v0.7.0
[INFO] [stderr]    Compiling embedded-hal v0.2.7
[INFO] [stderr]    Compiling embedded-nal v0.9.0
[INFO] [stderr]    Compiling embassy-executor v0.9.1
[INFO] [stderr]    Compiling embassy-net-driver v0.2.0
[INFO] [stderr]    Compiling esp-p4-eth v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling embassy-futures v0.1.2
[INFO] [stderr]    Compiling embedded-nal-async v0.9.0
[INFO] [stderr]    Compiling embassy-time v0.5.1
[INFO] [stderr]    Compiling static_cell v2.1.1
[INFO] [stderr]    Compiling embassy-net-driver-channel v0.3.2
[INFO] [stderr]    Compiling embassy-net v0.9.0
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling embassy-executor-macros v0.7.0
[INFO] [stdout] warning: function `read_be_u32` is never used
[INFO] [stdout]    --> src/eth/mod.rs:955:4
[INFO] [stdout]     |
[INFO] [stdout] 955 | fn read_be_u32(buf: &[u8], off: usize) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_dump_into` is never used
[INFO] [stdout]    --> src/eth/mod.rs:966:4
[INFO] [stdout]     |
[INFO] [stdout] 966 | fn hex_dump_into(slot: &[core::sync::atomic::AtomicU32; 16], buf: &[u8], len: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `classify_rx_frame` is never used
[INFO] [stdout]    --> src/eth/mod.rs:983:15
[INFO] [stdout]     |
[INFO] [stdout] 983 | pub(crate) fn classify_rx_frame(buf: &[u8], len: usize) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_tx_frame_metadata` is never used
[INFO] [stdout]     --> src/eth/mod.rs:1027:15
[INFO] [stdout]      |
[INFO] [stdout] 1027 | pub(crate) fn record_tx_frame_metadata(buf: &[u8]) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_state_action` is never used
[INFO] [stdout]     --> src/eth/mod.rs:1059:21
[INFO] [stdout]      |
[INFO] [stdout] 1059 | pub(crate) const fn link_state_action(prev_link_up: bool, is_up_now: bool) -> LinkAction {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ip` is never used
[INFO] [stdout]    --> src/clic.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn clic_byte_ip(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ie` is never used
[INFO] [stdout]    --> src/clic.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn clic_byte_ie(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_attr` is never used
[INFO] [stdout]    --> src/clic.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn clic_byte_attr(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ctl` is never used
[INFO] [stdout]    --> src/clic.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn clic_byte_ctl(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `embassy-executor`
[INFO] [stderr]  --> Cargo.toml:5:15
[INFO] [stderr]   |
[INFO] [stderr] 5 | [dependencies.embassy-executor]
[INFO] [stderr]   |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `embassy-executor`
[INFO] [stderr] warning: unused dependency `embassy-net`
[INFO] [stderr]   --> Cargo.toml:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | [dependencies.embassy-net]
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `embassy-net`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 9.03s
[INFO] running `Command { std: "docker" "inspect" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:245:12
[INFO] [stderr]     |
[INFO] [stderr] 245 | homepage = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 250 | repository = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |              ---------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 1 warning
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling embassy-time v0.5.1
[INFO] [stderr]    Compiling embassy-sync v0.8.0
[INFO] [stderr]    Compiling embassy-sync v0.7.2
[INFO] [stderr]    Compiling embassy-executor v0.9.1
[INFO] [stderr]    Compiling embassy-net v0.9.0
[INFO] [stderr]    Compiling embassy-net-driver-channel v0.3.2
[INFO] [stderr]    Compiling esp-p4-eth v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `read_be_u32` is never used
[INFO] [stdout]    --> src/eth/mod.rs:955:4
[INFO] [stdout]     |
[INFO] [stdout] 955 | fn read_be_u32(buf: &[u8], off: usize) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_dump_into` is never used
[INFO] [stdout]    --> src/eth/mod.rs:966:4
[INFO] [stdout]     |
[INFO] [stdout] 966 | fn hex_dump_into(slot: &[core::sync::atomic::AtomicU32; 16], buf: &[u8], len: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `classify_rx_frame` is never used
[INFO] [stdout]    --> src/eth/mod.rs:983:15
[INFO] [stdout]     |
[INFO] [stdout] 983 | pub(crate) fn classify_rx_frame(buf: &[u8], len: usize) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_tx_frame_metadata` is never used
[INFO] [stdout]     --> src/eth/mod.rs:1027:15
[INFO] [stdout]      |
[INFO] [stdout] 1027 | pub(crate) fn record_tx_frame_metadata(buf: &[u8]) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_state_action` is never used
[INFO] [stdout]     --> src/eth/mod.rs:1059:21
[INFO] [stdout]      |
[INFO] [stdout] 1059 | pub(crate) const fn link_state_action(prev_link_up: bool, is_up_now: bool) -> LinkAction {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ip` is never used
[INFO] [stdout]    --> src/clic.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn clic_byte_ip(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ie` is never used
[INFO] [stdout]    --> src/clic.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn clic_byte_ie(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_attr` is never used
[INFO] [stdout]    --> src/clic.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn clic_byte_attr(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clic_byte_ctl` is never used
[INFO] [stdout]    --> src/clic.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn clic_byte_ctl(idx: u8) -> *mut u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `embassy-executor`
[INFO] [stderr]  --> Cargo.toml:5:15
[INFO] [stderr]   |
[INFO] [stderr] 5 | [dependencies.embassy-executor]
[INFO] [stderr]   |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `embassy-executor`
[INFO] [stderr] warning: unused dependency `embassy-net`
[INFO] [stderr]   --> Cargo.toml:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | [dependencies.embassy-net]
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `embassy-net`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 4.80s
[INFO] running `Command { std: "docker" "inspect" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:245:12
[INFO] [stderr]     |
[INFO] [stderr] 245 | homepage = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 250 | repository = "https://github.com/babasha/esp-p4-eth"
[INFO] [stderr]     |              ---------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 1 warning
[INFO] [stderr] warning: function `read_be_u32` is never used
[INFO] [stderr]    --> src/eth/mod.rs:955:4
[INFO] [stderr]     |
[INFO] [stderr] 955 | fn read_be_u32(buf: &[u8], off: usize) -> u32 {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_dump_into` is never used
[INFO] [stderr]    --> src/eth/mod.rs:966:4
[INFO] [stderr]     |
[INFO] [stderr] 966 | fn hex_dump_into(slot: &[core::sync::atomic::AtomicU32; 16], buf: &[u8], len: usize) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `classify_rx_frame` is never used
[INFO] [stderr]    --> src/eth/mod.rs:983:15
[INFO] [stderr]     |
[INFO] [stderr] 983 | pub(crate) fn classify_rx_frame(buf: &[u8], len: usize) {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `record_tx_frame_metadata` is never used
[INFO] [stderr]     --> src/eth/mod.rs:1027:15
[INFO] [stderr]      |
[INFO] [stderr] 1027 | pub(crate) fn record_tx_frame_metadata(buf: &[u8]) {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `link_state_action` is never used
[INFO] [stderr]     --> src/eth/mod.rs:1059:21
[INFO] [stderr]      |
[INFO] [stderr] 1059 | pub(crate) const fn link_state_action(prev_link_up: bool, is_up_now: bool) -> LinkAction {
[INFO] [stderr]      |                     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `clic_byte_ip` is never used
[INFO] [stderr]    --> src/clic.rs:110:4
[INFO] [stderr]     |
[INFO] [stderr] 110 | fn clic_byte_ip(idx: u8) -> *mut u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `clic_byte_ie` is never used
[INFO] [stderr]    --> src/clic.rs:115:4
[INFO] [stderr]     |
[INFO] [stderr] 115 | fn clic_byte_ie(idx: u8) -> *mut u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `clic_byte_attr` is never used
[INFO] [stderr]    --> src/clic.rs:120:4
[INFO] [stderr]     |
[INFO] [stderr] 120 | fn clic_byte_attr(idx: u8) -> *mut u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `clic_byte_ctl` is never used
[INFO] [stderr]    --> src/clic.rs:125:4
[INFO] [stderr]     |
[INFO] [stderr] 125 | fn clic_byte_ctl(idx: u8) -> *mut u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `esp-p4-eth` (lib) generated 9 warnings
[INFO] [stderr] warning: unused dependency `embassy-executor`
[INFO] [stderr]  --> Cargo.toml:5:15
[INFO] [stderr]   |
[INFO] [stderr] 5 | [dependencies.embassy-executor]
[INFO] [stderr]   |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `embassy-executor`
[INFO] [stderr] warning: unused dependency `embassy-net`
[INFO] [stderr]   --> Cargo.toml:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | [dependencies.embassy-net]
[INFO] [stderr]    |               ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `embassy-net`
[INFO] [stderr] warning: `esp-p4-eth` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/esp-p4-eth/8122615dec5389f7/out/esp_p4_eth-8122615dec5389f7)
[INFO] [stdout] 
[INFO] [stdout] running 180 tests
[INFO] [stdout] test clic::tests::clic_ctl_byte_clamps_priority_to_three_bits ... ok
[INFO] [stdout] test clic::tests::clic_ctl_byte_packs_priority_into_top_three_bits ... ok
[INFO] [stdout] test board::tests::waveshare_phy_addr_is_one_and_in_legal_range ... ok
[INFO] [stdout] test board::tests::waveshare_ref_clock_pad_is_gpio50 ... ok
[INFO] [stdout] test clic::tests::clic_ext_intr_num_offset_is_sixteen ... ok
[INFO] [stdout] test board::tests::all_waveshare_gpio_numbers_fit_p4_pinout ... ok
[INFO] [stdout] test board::tests::waveshare_rmii_pin_map_matches_dev_board_silkscreen ... ok
[INFO] [stdout] test board::tests::waveshare_mdio_pins_match_dev_board_silkscreen ... ok
[INFO] [stdout] test clic::tests::int_map_emac_sbd_address_matches_idf ... ok
[INFO] [stdout] test clic::tests::clic_attr_byte_encodes_each_trigger_distinctly ... ok
[INFO] [stdout] test clic::tests::int_map_systimer_target0_address_matches_idf ... ok
[INFO] [stdout] test eth::clock::tests::configure_speed_divider_updates_rx_and_tx_fields_only ... ok
[INFO] [stdout] test board::tests::waveshare_phy_reset_is_gpio51_active_low ... ok
[INFO] [stdout] test clic::tests::clic_idx_for_cpu_line_is_offset_by_sixteen ... ok
[INFO] [stdout] test clic::tests::clic_threshold_value_packs_threshold_byte_into_high_byte ... ok
[INFO] [stdout] test clic::tests::clic_word_address_for_systimer_entry_matches_layout ... ok
[INFO] [stdout] test clic::tests::int_map_value_writes_clic_index_in_low_six_bits ... ok
[INFO] [stdout] test eth::clock::tests::mpll_output_pin_maps_to_expected_iomux_register ... ok
[INFO] [stdout] test eth::clock::tests::mpll_clock_out_enables_ref_50m_and_loopback_input ... ok
[INFO] [stdout] test eth::clock::tests::ref_clock_pin_maps_to_expected_iomux_register ... ok
[INFO] [stdout] test board::tests::waveshare_pin_assignments_are_unique ... ok
[INFO] [stdout] test clic::tests::clic_attr_byte_machine_mode_level_positive_is_0xc0 ... ok
[INFO] [stdout] test eth::descriptors::tests::descriptor_bit_constants_match_idf_layout ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_drops_oversized_frame_without_touching_buffer ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_accepts_max_buffer_sized_frame ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_error_flag_takes_precedence_over_runt_classification ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_drops_runt_frame_and_counts_it ... ok
[INFO] [stdout] test eth::clock::tests::speed_divider_matches_checklist ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_handle_overflow_rebuilds_ring_and_restarts_from_zero ... ok
[INFO] [stdout] test eth::descriptors::tests::dma_buffer_wrapper_is_cacheline_aligned ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_handle_overflow_preserves_ring_invariants_under_repetition ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_returns_none_for_dma_owned_descriptor ... ok
[INFO] [stdout] test board::tests::board_config_is_copy_clone ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_skips_error_frame_and_recycles_descriptor ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_fuzz_preserves_ring_invariants ... ok
[INFO] [stdout] test clic::tests::clic_ctrl_offset_is_four_bytes_per_entry ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_handles_consecutive_frames ... ok
[INFO] [stdout] test clic::tests::clic_byte_offsets_are_ip_ie_attr_ctl_in_order ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_has_packet_tracks_current_descriptor_owner ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_valid_frame_waits_for_explicit_pop ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_handles_zero_length_frame ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_fails_when_ring_is_full ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_ring_full_does_not_advance_or_copy_payload ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_keeps_descriptor_chained ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_accepts_min_and_max_frame_sizes ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_recycles_incomplete_frame ... ok
[INFO] [stdout] test eth::clock::tests::replace_field_overwrites_only_target_bits ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_recovers_after_descriptor_returns_to_cpu ... ok
[INFO] [stdout] test eth::descriptors::tests::descriptor_layout_matches_checklist ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_rejects_oversized_frame_without_touching_ring ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_wraps_index_after_pop ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_reads_frame_and_pop_returns_it_to_dma ... ok
[INFO] [stdout] test eth::dma::tests::aligned_range_is_left_unchanged ... ok
[INFO] [stdout] test eth::dma::tests::dma_bus_mode_enables_burst_and_alignment ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_survives_ten_thousand_cycles ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_wraps_index_after_last_descriptor ... ok
[INFO] [stdout] test eth::descriptors::tests::rx_receive_survives_ten_thousand_cycles ... ok
[INFO] [stdout] test eth::descriptors::tests::static_dma_resources_split_exposes_all_zeroed_dma_storage ... ok
[INFO] [stdout] test eth::dma::tests::dma_poll_demands_and_interrupt_disable_update_registers ... ok
[INFO] [stdout] test eth::dma::tests::dma_clear_interrupt_status_skips_zero_clear_mask ... ok
[INFO] [stdout] test eth::dma::tests::dma_op_mode_uses_tx_store_forward_and_cut_through_rx ... ok
[INFO] [stdout] test eth::dma::tests::dma_interrupt_status_clear_mask_does_not_touch_state_fields ... ok
[INFO] [stdout] test eth::dma::tests::dma_interrupt_status_clear_mask_covers_all_sticky_bits ... ok
[INFO] [stdout] test eth::dma::tests::record_cache_call_counters_wrap_cleanly_on_overflow ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_has_capacity_tracks_current_descriptor_owner ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_reset_builds_closed_ring ... ok
[INFO] [stdout] test eth::descriptors::tests::tx_transmit_copies_payload_and_advances ... ok
[INFO] [stdout] test eth::dma::tests::dma_interrupt_status_extracts_recovery_flags ... ok
[INFO] [stdout] test eth::dma::tests::dma_reset_programs_software_reset_and_observes_clear_on_host ... ok
[INFO] [stdout] test eth::dma::tests::dma_reset_succeeds_when_swr_clears ... ok
[INFO] [stdout] test eth::dma::tests::dma_reset_times_out_when_swr_stays_set ... ok
[INFO] [stdout] test eth::dma::tests::record_cache_call_accumulates_across_multiple_calls ... ok
[INFO] [stdout] test eth::dma::tests::record_cache_call_invalidate_increments_only_invalidate_counters ... ok
[INFO] [stdout] test eth::dma::tests::dma_clear_interrupt_status_writes_only_clearable_bits ... ok
[INFO] [stdout] test eth::dma::tests::dma_descriptor_lists_are_programmed_from_slice_addresses ... ok
[INFO] [stdout] test eth::dma::tests::dma_init_programs_bus_op_mode_and_interrupt_mask ... ok
[INFO] [stdout] test eth::phy::tests::mdio_transaction_returns_timeout_when_bus_is_busy ... ok
[INFO] [stdout] test eth::dma::tests::dma_interrupt_enable_value_covers_normal_and_abnormal_paths ... ok
[INFO] [stdout] test eth::phy::tests::mdio_write_preserves_csr_clock_range_and_writes_data ... ok
[INFO] [stdout] test eth::phy::tests::mii_address_value_packs_write_transaction ... ok
[INFO] [stdout] test eth::dma::tests::record_cache_call_writeback_increments_only_writeback_counters ... ok
[INFO] [stdout] test eth::phy::tests::mii_address_value_masks_phy_register_and_clock_fields ... ok
[INFO] [stdout] test eth::phy::tests::mdio_read_preserves_csr_clock_range_and_returns_data ... ok
[INFO] [stdout] test eth::phy::tests::mii_address_value_packs_read_transaction_without_write_bit ... ok
[INFO] [stdout] test eth::dma::tests::zero_size_range_is_skipped ... ok
[INFO] [stdout] test eth::phy::tests::negotiation_uses_ethernet_priority_order_for_combined_abilities ... ok
[INFO] [stdout] test eth::pins::tests::iomux_reg_matches_idf_addresses ... ok
[INFO] [stdout] test eth::dma::tests::unaligned_range_is_expanded_to_cache_lines ... ok
[INFO] [stdout] test eth::phy::tests::negotiation_prefers_highest_common_mode ... ok
[INFO] [stdout] test eth::phy::tests::phy_bit_constants_match_clause_22_layout ... ok
[INFO] [stdout] test eth::phy::tests::phy_id_register_constants_match_standard_register_map ... ok
[INFO] [stdout] test eth::regs::tests::dma_register_addresses_match_idf ... ok
[INFO] [stdout] test eth::phy::tests::wait_for_mdio_idle_returns_ok_after_busy_clears ... ok
[INFO] [stdout] test eth::regs::tests::dma_status_and_mode_masks_match_idf ... ok
[INFO] [stdout] test eth::phy::tests::wait_for_mdio_idle_times_out_when_busy_stays_set ... ok
[INFO] [stdout] test eth::pins::tests::input_pad_config_enables_input_and_selects_emac_function ... ok
[INFO] [stdout] test eth::dma::tests::record_cache_call_handles_systimer_wraparound ... ok
[INFO] [stdout] test eth::regs::tests::write_mac_address_uses_little_endian_register_layout_and_enables_addr0 ... ok
[INFO] [stdout] test eth::regs::tests::miiaddr_bit_fields_match_idf ... ok
[INFO] [stdout] test eth::regs::tests::test_register_bank_overwrites_existing_register_value ... ok
[INFO] [stdout] test eth::regs::tests::test_register_bank_reads_unwritten_registers_as_zero ... ok
[INFO] [stdout] test eth::regs::tests::maccfg_bit_masks_match_idf ... ok
[INFO] [stdout] test eth::pins::tests::waveshare_mdio_pins_set_iomux_to_gpio_function ... ok
[INFO] [stdout] test eth::regs::tests::macffilt_bit_masks_match_idf ... ok
[INFO] [stdout] test eth::pins::tests::waveshare_phy_reset_deasserts_gpio51_high ... ok
[INFO] [stdout] test eth::pins::tests::waveshare_rmii_pins_program_iomux_function_3 ... ok
[INFO] [stdout] test eth::regs::tests::mac_register_addresses_match_idf ... ok
[INFO] [stdout] test eth::regs::tests::emac_base_matches_idf_hw_ver3 ... ok
[INFO] [stdout] test eth::clock::tests::disable_clock_tree_clears_gates_and_asserts_reset ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_dhcp_offer_dst_port_68_is_detected ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_dhcp_bootp_server_port_67_is_detected ... ok
[INFO] [stdout] test eth::pins::tests::output_pad_config_disables_input_and_selects_emac_function ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_arp_bumps_arp_counter ... ok
[INFO] [stdout] test eth::tests::csr_clock_range_matches_expected_bucket ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_large_frame_writes_hex_dump_into_static_slot ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_dhcp_writes_dump_into_static_slot ... ok
[INFO] [stdout] test eth::tests::bdd_given_bootstrapped_driver_when_station_mac_changes_then_hardware_identity_changes ... ok
[INFO] [stdout] test eth::tests::domain_fatal_dma_error_restores_transmit_path ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_non_dhcp_udp_is_not_dhcp_classified ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_runt_below_14_bytes_skips_classification ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_ipv4_with_icmp_proto_bumps_both_counters ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_ipv6_skips_classification ... ok
[INFO] [stdout] test eth::tests::bdd_given_runt_frame_when_driver_receives_then_frame_is_dropped_and_dma_rearmed ... ok
[INFO] [stdout] test eth::tests::bdd_given_tx_ring_is_full_when_stack_transmits_then_backpressure_is_reported ... ok
[INFO] [stdout] test eth::tests::bdd_given_running_driver_when_shutdown_is_requested_then_peripheral_is_quiesced ... ok
[INFO] [stdout] test eth::tests::bdd_given_rx_and_tx_recovery_bits_when_interrupt_is_handled_then_dma_paths_are_polled ... ok
[INFO] [stdout] test eth::tests::dma_interrupt_status_restarts_dma_on_fatal_bus_error ... ok
[INFO] [stdout] test eth::tests::dma_interrupt_status_resets_rx_ring_on_overflow ... ok
[INFO] [stdout] test eth::tests::classify_rx_frame_ipv4_with_unknown_proto_bumps_only_ipv4_counter ... ok
[INFO] [stdout] test eth::tests::domain_bootstrap_declares_station_identity_and_empty_rings ... ok
[INFO] [stdout] test eth::tests::enums_stay_stable ... ok
[INFO] [stdout] test eth::tests::domain_receive_frame_delivers_payload_until_driver_acknowledges_it ... ok
[INFO] [stdout] test eth::tests::link_state_action_down_to_down_is_no_change ... ok
[INFO] [stdout] test eth::tests::link_state_action_down_to_up_demands_negotiate ... ok
[INFO] [stdout] test eth::tests::link_state_action_up_to_down_signals_go_down ... ok
[INFO] [stdout] test eth::tests::handle_dma_interrupt_reads_and_clears_status_register ... ok
[INFO] [stdout] test eth::tests::link_poll_interval_stays_in_sane_range ... ok
[INFO] [stdout] test eth::tests::mac_default_config_matches_expected_defaults ... ok
[INFO] [stdout] test eth::tests::record_tx_frame_metadata_full_frame_captures_all_header_fields ... ok
[INFO] [stdout] test eth::tests::record_tx_frame_metadata_short_buf_records_only_length ... ok
[INFO] [stdout] test eth::tests::link_state_action_up_to_up_is_no_change ... ok
[INFO] [stdout] test eth::tests::ethernet_can_be_reinitialized_after_drop ... ok
[INFO] [stdout] test eth::tests::record_tx_frame_metadata_handles_oversize_frame ... ok
[INFO] [stdout] test eth::tests::wait_for_dma_stop_succeeds_when_states_reach_stopped ... ok
[INFO] [stdout] test eth::tests::mac_init_programs_mdio_filter_config_and_station_address ... ok
[INFO] [stdout] test eth::tests::handle_dma_interrupt_kicks_tx_poll_on_tx_recovery_bits ... ok
[INFO] [stdout] test eth::tests::ethernet_new_from_static_resources_uses_single_dma_resource_owner ... ok
[INFO] [stdout] test eth::tests::domain_transmit_frame_queues_dma_work_and_advances_tx_cursor ... ok
[INFO] [stdout] test eth::tests::ethernet_new_keeps_mac_and_resets_rings ... ok
[INFO] [stdout] test eth::tests::wait_for_dma_stop_times_out_when_dma_keeps_running ... ok
[INFO] [stdout] test systimer::tests::target0_int_bit_is_lowest_bit ... ok
[INFO] [stdout] test systimer::tests::target0_hi_mask_is_twenty_bits ... ok
[INFO] [stdout] test systimer::tests::target_ticks_split_zero_is_zero_zero ... ok
[INFO] [stdout] test systimer::tests::target_ticks_split_hi_truncates_above_twenty_bits ... ok
[INFO] [stdout] test systimer::tests::target_ticks_split_lo_carries_low_thirty_two_bits ... ok
[INFO] [stdout] test eth::tests::set_duplex_only_toggles_duplex_bit ... ok
[INFO] [stdout] test eth::tests::set_speed_updates_speed_bits_and_preserves_unrelated_config ... ok
[INFO] [stdout] test eth::tests::drop_disables_interrupts_and_powers_down_emac ... ok
[INFO] [stdout] test eth::tests::stop_disables_mac_and_dma_datapaths_when_hardware_reports_stopped ... ok
[INFO] [stdout] test eth::tests::domain_rx_overflow_interrupt_rebuilds_receive_path ... ok
[INFO] [stdout] test eth::tests::phy_link_status_is_down_on_host_stub ... ok
[INFO] [stdout] test eth::tests::start_enables_mac_and_dma_datapaths ... ok
[INFO] [stdout] test eth::tests::handle_dma_interrupt_property_fuzz_preserves_driver_invariants ... ok
[INFO] [stdout] test eth::tests::phy_negotiate_returns_fallback_mode_on_host_stub ... ok
[INFO] [stdout] test systimer::tests::ticks_to_us_truncates_sub_microsecond ... ok
[INFO] [stdout] test systimer::tests::ticks_per_us_is_sixteen ... ok
[INFO] [stdout] test systimer::tests::us_to_ticks_round_trips_arbitrary_microsecond_values ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::clic_indices_for_systimer_and_emac_are_distinct ... ok
[INFO] [stdout] test systimer::tests::ticks_to_us_round_trips_one_second ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::cpu_int_line_emac_is_two_distinct_from_systimer ... ok
[INFO] [stdout] test systimer::tests::tick_rate_hz_is_sixteen_mhz ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::cpu_int_line_systimer_is_one ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::is_async_irq_recognises_clic_delivery ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::emac_sbd_clic_index_is_eighteen ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::mcause_code_extracts_clic_index ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::mcause_interrupt_bit_is_msb ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::is_async_irq_returns_false_for_synchronous_exception ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::mcause_code_mask_keeps_low_twelve_bits_only ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::mcause_code_masks_above_byte_range ... ok
[INFO] [stdout] test time_driver_irq_logic::tests::systimer_target0_clic_index_is_seventeen ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 180 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests esp_p4_eth
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf", kill_on_drop: false }`
[INFO] [stdout] 8fcb52586fab3ff8b4c6f0ca4ccf2dcc87ea4fb5d064b7f874955455dde2e3bf
