[INFO] cloning repository https://github.com/huyufeifei/svdrivers
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/huyufeifei/svdrivers" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuyufeifei%2Fsvdrivers", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuyufeifei%2Fsvdrivers'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3e5bf67fc384a69679e09fbbabc33a068580aa61
[INFO] checking huyufeifei/svdrivers against 65b20a97de33e9e59992793a144aef2950c48c76 for pr-154715
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuyufeifei%2Fsvdrivers" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/huyufeifei/svdrivers
[INFO] finished tweaking git repo https://github.com/huyufeifei/svdrivers
[INFO] tweaked toml for git repo https://github.com/huyufeifei/svdrivers written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/huyufeifei/svdrivers on toolchain 65b20a97de33e9e59992793a144aef2950c48c76
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "generate-lockfile" "--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/os-module/kernel-sync.git`
[INFO] [stderr]     Updating git repository `https://github.com/os-module/plic`
[INFO] [stderr]     Updating git repository `https://github.com/rcore-os/virtio-drivers`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 43 packages to latest compatible versions
[INFO] [stderr]       Adding smoltcp v0.9.1 (available: v0.13.1)
[INFO] [stderr]       Adding spin v0.9.9 (available: v0.12.2)
[INFO] [stderr]       Adding talc v4.4.3 (available: v5.0.4)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded safe-mmio v0.3.1
[INFO] [stderr]   Downloaded riscv v0.16.1
[INFO] [stderr]   Downloaded riscv-types v0.1.0
[INFO] [stderr]   Downloaded riscv-macros v0.4.1
[INFO] [stderr]   Downloaded fdt v0.1.5
[INFO] [stderr]   Downloaded talc v4.4.3
[INFO] [stderr]   Downloaded smoltcp v0.9.1
[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:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2
[INFO] running `Command { std: "docker" "start" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2", 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" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2" "/opt/rustwide/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2" "/opt/rustwide/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]     Checking riscv-types v0.1.0
[INFO] [stderr]     Checking embedded-io v0.7.1
[INFO] [stderr]    Compiling pastey v0.2.3
[INFO] [stderr]     Checking embedded-hal v1.0.0
[INFO] [stderr]     Checking critical-section v1.2.0
[INFO] [stderr]     Checking fdt v0.1.5
[INFO] [stderr]     Checking plic v0.1.0 (https://github.com/os-module/plic#1a714257)
[INFO] [stderr]     Checking virtio-drivers v0.1.0 (/opt/rustwide/workdir/virtio-drivers)
[INFO] [stderr]     Checking talc v4.4.3
[INFO] [stderr]     Checking kernel-sync v0.1.1 (https://github.com/os-module/kernel-sync.git#4483c08e)
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling riscv-macros v0.4.1
[INFO] [stderr]    Compiling enumn v0.1.14
[INFO] [stderr]     Checking riscv v0.16.1
[INFO] [stdout] warning: variants `GetLifetime`, `Discard`, `WriteZeroes`, and `SecureErase` are never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/block/ty.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub enum BlkReqType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 71 |     GetLifetime = 10,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 72 |     Discard = 11,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 73 |     WriteZeroes = 13,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 74 |     SecureErase = 14,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BlkReqType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `size_max`, `seg_max`, `geometry`, `blk_size`, `topology`, and `opt_io_size` are never read
[INFO] [stdout]    --> virtio-drivers/src/device/block/ty.rs:131:16
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct BlkConfig {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub(super) size_max: ReadWrite<{ CONFIG_OFFSET + 0x8 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 132 |     pub(super) seg_max: ReadWrite<{ CONFIG_OFFSET + 0xc }, u32>,
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub(super) geometry: ReadWrite<{ CONFIG_OFFSET + 0x10 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 137 |     pub(super) blk_size: ReadWrite<{ CONFIG_OFFSET + 0x14 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub(super) topology: ReadWrite<{ CONFIG_OFFSET + 0x18 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 142 |     pub(super) opt_io_size: ReadWrite<{ CONFIG_OFFSET + 0x1c }, u32>,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BlkConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `emerg_wr` is never read
[INFO] [stdout]  --> virtio-drivers/src/device/console/ty.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ConsoleConfig {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 9 |     pub(super) emerg_wr: WriteOnly<{ CONFIG_OFFSET + 8 }, u32>,
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ConsoleConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct VirtIOGpu<H: Hal<QUEUE_SIZE>, T: Transport> {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     config: GpuConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_DISPLAY` is never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 | const EVENT_DISPLAY: u32 = 1 << 0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated constants are never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl Command {
[INFO] [stdout]    | ------------ associated constants in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub(super) const RESOURCE_UNREF: Command = Command(0x102);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub(super) const RESOURCE_DETACH_BACKING: Command = Command(0x107);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     pub(super) const GET_CAPSET_INFO: Command = Command(0x108);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     pub(super) const GET_CAPSET: Command = Command(0x109);
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 65 |     pub(super) const GET_EDID: Command = Command(0x10a);
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub(super) const OK_CAPSET_INFO: Command = Command(0x1102);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 73 |     pub(super) const OK_CAPSET: Command = Command(0x1103);
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 74 |     pub(super) const OK_EDID: Command = Command(0x1104);
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 75 |
[INFO] [stdout] 76 |     pub(super) const ERR_UNSPEC: Command = Command(0x1200);
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 77 |     pub(super) const ERR_OUT_OF_MEMORY: Command = Command(0x1201);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 78 |     pub(super) const ERR_INVALID_SCANOUT_ID: Command = Command(0x1202);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GPU_FLAG_FENCE` is never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | const GPU_FLAG_FENCE: u32 = 1 << 0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `status_queue` is never read
[INFO] [stdout]   --> virtio-drivers/src/device/input/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct VirtIOInput<H: Hal<QUEUE_SIZE>, T: Transport> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     status_queue: VirtIoQueue<H, QUEUE_SIZE>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AbsInfo` is never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/input/ty.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct AbsInfo {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DevIDs` is never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/input/ty.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct DevIDs {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_BUFFER_LEN` is never used
[INFO] [stdout]  --> virtio-drivers/src/device/net/ty.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const MAX_BUFFER_LEN: usize = 65535;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `NONE`, `TCPV4`, `UDP`, `TCPV6`, and `ECN` are never used
[INFO] [stdout]    --> virtio-drivers/src/device/net/ty.rs:172:11
[INFO] [stdout]     |
[INFO] [stdout] 171 | impl GsoType {
[INFO] [stdout]     | ------------ associated constants in this implementation
[INFO] [stdout] 172 |     const NONE: GsoType = GsoType(0);
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 173 |     const TCPV4: GsoType = GsoType(1);
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 174 |     const UDP: GsoType = GsoType(3);
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 175 |     const TCPV6: GsoType = GsoType(4);
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 176 |     const ECN: GsoType = GsoType(0x80);
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `queue_page` is never read
[INFO] [stdout]   --> virtio-drivers/src/queue.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct VirtIoQueue<H: Hal<SIZE>, const SIZE: usize> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     queue_page: Box<dyn QueuePage<SIZE>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `DESCRIPTOR_TABLE_OFFSET` is never used
[INFO] [stdout]   --> virtio-drivers/src/queue.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<H: Hal<SIZE>, const SIZE: usize> VirtIoQueue<H, SIZE> {
[INFO] [stdout]    | ---------------------------------------------------------- associated constant in this implementation
[INFO] [stdout] 26 |     const AVAIL_RING_OFFSET: usize = size_of::<Descriptor>() * SIZE;
[INFO] [stdout] 27 |     const DESCRIPTOR_TABLE_OFFSET: usize = 0;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `INDIRECT` is never used
[INFO] [stdout]    --> virtio-drivers/src/queue.rs:293:11
[INFO] [stdout]     |
[INFO] [stdout] 289 | impl DescFlag {
[INFO] [stdout]     | ------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 293 |     const INDIRECT: u16 = 4;
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config_generation` is never read
[INFO] [stdout]    --> virtio-drivers/src/transport/mmio.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub struct VirtIOHeader {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 155 |     config_generation: ReadOnly<0xfc, u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VirtIOHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `GetLifetime`, `Discard`, `WriteZeroes`, and `SecureErase` are never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/block/ty.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub enum BlkReqType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 71 |     GetLifetime = 10,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 72 |     Discard = 11,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 73 |     WriteZeroes = 13,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 74 |     SecureErase = 14,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BlkReqType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `size_max`, `seg_max`, `geometry`, `blk_size`, `topology`, and `opt_io_size` are never read
[INFO] [stdout]    --> virtio-drivers/src/device/block/ty.rs:131:16
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct BlkConfig {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub(super) size_max: ReadWrite<{ CONFIG_OFFSET + 0x8 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 132 |     pub(super) seg_max: ReadWrite<{ CONFIG_OFFSET + 0xc }, u32>,
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub(super) geometry: ReadWrite<{ CONFIG_OFFSET + 0x10 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 137 |     pub(super) blk_size: ReadWrite<{ CONFIG_OFFSET + 0x14 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub(super) topology: ReadWrite<{ CONFIG_OFFSET + 0x18 }, u32>,
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 142 |     pub(super) opt_io_size: ReadWrite<{ CONFIG_OFFSET + 0x1c }, u32>,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BlkConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `emerg_wr` is never read
[INFO] [stdout]  --> virtio-drivers/src/device/console/ty.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ConsoleConfig {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 9 |     pub(super) emerg_wr: WriteOnly<{ CONFIG_OFFSET + 8 }, u32>,
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ConsoleConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct VirtIOGpu<H: Hal<QUEUE_SIZE>, T: Transport> {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     config: GpuConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_DISPLAY` is never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 | const EVENT_DISPLAY: u32 = 1 << 0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated constants are never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl Command {
[INFO] [stdout]    | ------------ associated constants in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub(super) const RESOURCE_UNREF: Command = Command(0x102);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub(super) const RESOURCE_DETACH_BACKING: Command = Command(0x107);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     pub(super) const GET_CAPSET_INFO: Command = Command(0x108);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     pub(super) const GET_CAPSET: Command = Command(0x109);
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 65 |     pub(super) const GET_EDID: Command = Command(0x10a);
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub(super) const OK_CAPSET_INFO: Command = Command(0x1102);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 73 |     pub(super) const OK_CAPSET: Command = Command(0x1103);
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 74 |     pub(super) const OK_EDID: Command = Command(0x1104);
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 75 |
[INFO] [stdout] 76 |     pub(super) const ERR_UNSPEC: Command = Command(0x1200);
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 77 |     pub(super) const ERR_OUT_OF_MEMORY: Command = Command(0x1201);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 78 |     pub(super) const ERR_INVALID_SCANOUT_ID: Command = Command(0x1202);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GPU_FLAG_FENCE` is never used
[INFO] [stdout]   --> virtio-drivers/src/device/gpu/ty.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | const GPU_FLAG_FENCE: u32 = 1 << 0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `status_queue` is never read
[INFO] [stdout]   --> virtio-drivers/src/device/input/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct VirtIOInput<H: Hal<QUEUE_SIZE>, T: Transport> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     status_queue: VirtIoQueue<H, QUEUE_SIZE>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AbsInfo` is never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/input/ty.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct AbsInfo {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DevIDs` is never constructed
[INFO] [stdout]   --> virtio-drivers/src/device/input/ty.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct DevIDs {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_BUFFER_LEN` is never used
[INFO] [stdout]  --> virtio-drivers/src/device/net/ty.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const MAX_BUFFER_LEN: usize = 65535;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `NONE`, `TCPV4`, `UDP`, `TCPV6`, and `ECN` are never used
[INFO] [stdout]    --> virtio-drivers/src/device/net/ty.rs:172:11
[INFO] [stdout]     |
[INFO] [stdout] 171 | impl GsoType {
[INFO] [stdout]     | ------------ associated constants in this implementation
[INFO] [stdout] 172 |     const NONE: GsoType = GsoType(0);
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 173 |     const TCPV4: GsoType = GsoType(1);
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 174 |     const UDP: GsoType = GsoType(3);
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 175 |     const TCPV6: GsoType = GsoType(4);
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 176 |     const ECN: GsoType = GsoType(0x80);
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `queue_page` is never read
[INFO] [stdout]   --> virtio-drivers/src/queue.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct VirtIoQueue<H: Hal<SIZE>, const SIZE: usize> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     queue_page: Box<dyn QueuePage<SIZE>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `DESCRIPTOR_TABLE_OFFSET` is never used
[INFO] [stdout]   --> virtio-drivers/src/queue.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<H: Hal<SIZE>, const SIZE: usize> VirtIoQueue<H, SIZE> {
[INFO] [stdout]    | ---------------------------------------------------------- associated constant in this implementation
[INFO] [stdout] 26 |     const AVAIL_RING_OFFSET: usize = size_of::<Descriptor>() * SIZE;
[INFO] [stdout] 27 |     const DESCRIPTOR_TABLE_OFFSET: usize = 0;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `INDIRECT` is never used
[INFO] [stdout]    --> virtio-drivers/src/queue.rs:293:11
[INFO] [stdout]     |
[INFO] [stdout] 289 | impl DescFlag {
[INFO] [stdout]     | ------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 293 |     const INDIRECT: u16 = 4;
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config_generation` is never read
[INFO] [stdout]    --> virtio-drivers/src/transport/mmio.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub struct VirtIOHeader {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 155 |     config_generation: ReadOnly<0xfc, u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VirtIOHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]     Checking safe-mmio v0.3.1
[INFO] [stderr]     Checking virtio-drivers v0.13.0 (https://github.com/rcore-os/virtio-drivers#b59889b2)
[INFO] [stderr]     Checking qemu v0.1.0 (/opt/rustwide/workdir/qemu)
[INFO] [stdout] error[E0432]: unresolved imports `riscv::register::scause::Exception`, `riscv::register::scause::Interrupt`
[INFO] [stdout]  --> qemu/src/trap/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 |     scause::{Exception, Interrupt, Trap},
[INFO] [stdout]   |              ^^^^^^^^^  ^^^^^^^^^ no `Interrupt` in `register::scause`
[INFO] [stdout]   |              |
[INFO] [stdout]   |              no `Exception` in `register::scause`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::trap::Trap::Exception
[INFO] [stdout]           riscv::interrupt::Exception
[INFO] [stdout]           riscv::interrupt::supervisor::Exception
[INFO] [stdout]           riscv::register::mcause::Trap::Exception
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::trap::Trap::Interrupt
[INFO] [stdout]           riscv::interrupt::Interrupt
[INFO] [stdout]           riscv::interrupt::supervisor::Interrupt
[INFO] [stdout]           riscv::register::mcause::Trap::Interrupt
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:263:40
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl DeviceBase for VirtIOBlk<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl DeviceBase for VirtIOBlk<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:269:44
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl DeviceBase for VirtIOConsole<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl DeviceBase for VirtIOConsole<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:275:40
[INFO] [stdout]     |
[INFO] [stdout] 275 | impl DeviceBase for VirtIOGpu<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 275 | impl DeviceBase for VirtIOGpu<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:281:42
[INFO] [stdout]     |
[INFO] [stdout] 281 | impl DeviceBase for VirtIOInput<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 281 | impl DeviceBase for VirtIOInput<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:287:40
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl DeviceBase for VirtIONet<HalImpl, MmioTransport, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl DeviceBase for VirtIONet<HalImpl, MmioTransport<'_>, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:295:43
[INFO] [stdout]     |
[INFO] [stdout] 295 | impl DeviceBase for VirtIONetRaw<HalImpl, MmioTransport, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 295 | impl DeviceBase for VirtIONetRaw<HalImpl, MmioTransport<'_>, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `riscv::register::scause::Exception`, `riscv::register::scause::Interrupt`
[INFO] [stdout]  --> qemu/src/trap/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 |     scause::{Exception, Interrupt, Trap},
[INFO] [stdout]   |              ^^^^^^^^^  ^^^^^^^^^ no `Interrupt` in `register::scause`
[INFO] [stdout]   |              |
[INFO] [stdout]   |              no `Exception` in `register::scause`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::trap::Trap::Exception
[INFO] [stdout]           riscv::interrupt::Exception
[INFO] [stdout]           riscv::interrupt::supervisor::Exception
[INFO] [stdout]           riscv::register::mcause::Trap::Exception
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::trap::Trap::Interrupt
[INFO] [stdout]           riscv::interrupt::Interrupt
[INFO] [stdout]           riscv::interrupt::supervisor::Interrupt
[INFO] [stdout]           riscv::register::mcause::Trap::Interrupt
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> qemu/src/boot.rs:26:3
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[naked]
[INFO] [stdout]    |   ^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[unsafe(naked)]
[INFO] [stdout]    |   +++++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a7`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         in("a7") which,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a0`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         inlateout("a0") arg0 as i32 => ret,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a1`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         in("a1") arg1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a2`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         in("a2") arg2);
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a0`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |         in("a0") arg0, in("a1") arg1, in("a2") arg2,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a1`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:91:24
[INFO] [stdout]    |
[INFO] [stdout] 91 |         in("a0") arg0, in("a1") arg1, in("a2") arg2,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a2`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:91:39
[INFO] [stdout]    |
[INFO] [stdout] 91 |         in("a0") arg0, in("a1") arg1, in("a2") arg2,
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a6`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         in("a6") function, in("a7") extension,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a7`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 |         in("a6") function, in("a7") extension,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a0`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         lateout("a0") error, lateout("a1") value,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid register `a1`: unknown register
[INFO] [stdout]   --> qemu/src/sbi.rs:93:30
[INFO] [stdout]    |
[INFO] [stdout] 93 |         lateout("a0") error, lateout("a1") value,
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:263:40
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl DeviceBase for VirtIOBlk<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl DeviceBase for VirtIOBlk<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:269:44
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl DeviceBase for VirtIOConsole<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl DeviceBase for VirtIOConsole<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:275:40
[INFO] [stdout]     |
[INFO] [stdout] 275 | impl DeviceBase for VirtIOGpu<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 275 | impl DeviceBase for VirtIOGpu<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:281:42
[INFO] [stdout]     |
[INFO] [stdout] 281 | impl DeviceBase for VirtIOInput<HalImpl, MmioTransport> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 281 | impl DeviceBase for VirtIOInput<HalImpl, MmioTransport<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:287:40
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl DeviceBase for VirtIONet<HalImpl, MmioTransport, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl DeviceBase for VirtIONet<HalImpl, MmioTransport<'_>, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here
[INFO] [stdout]    --> qemu/src/old_test.rs:295:43
[INFO] [stdout]     |
[INFO] [stdout] 295 | impl DeviceBase for VirtIONetRaw<HalImpl, MmioTransport, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^ expected lifetime parameter
[INFO] [stdout]     |
[INFO] [stdout] help: indicate the anonymous lifetime
[INFO] [stdout]     |
[INFO] [stdout] 295 | impl DeviceBase for VirtIONetRaw<HalImpl, MmioTransport<'_>, { crate::NET_QUEUE_SIZE }> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `naked_functions` has been stable since 1.88.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> qemu/src/main.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(naked_functions)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `asm_const` has been stable since 1.82.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> qemu/src/main.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(asm_const)]
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]   --> qemu/src/boot.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / fn panic(info: &core::panic::PanicInfo) -> ! {
[INFO] [stdout] 69 | |     println!("{}", info);
[INFO] [stdout] 70 | |     system_shutdown();
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the lang item is first defined in crate `std` (which `test` depends on)
[INFO] [stdout]    = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/65b20a97de33e9e59992793a144aef2950c48c76/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-2f7e17dbfe663611.rmeta
[INFO] [stdout]    = note: second definition in the local crate (`qemu`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0152, E0432, E0726.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `dma_alloc` has 2 parameters but the declaration in trait `virtio_drivers::Hal::dma_alloc` has 3
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn dma_alloc(pages: usize, _direction: BufferDirection) -> (PhysAddr, NonNull<u8>) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 parameters, found 2
[INFO] [stdout]    |
[INFO] [stdout]    = note: `dma_alloc` from trait: `fn(usize, virtio_drivers::BufferDirection, bool) -> (u64, NonNull<u8>)`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn dma_alloc(pages: usize, _direction: BufferDirection, access_platform: bool) -> (PhysAddr, NonNull<u8>) {
[INFO] [stdout]    |                                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `dma_dealloc` has 3 parameters but the declaration in trait `dma_dealloc` has 4
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:19:34
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unsafe fn dma_dealloc(paddr: PhysAddr, _vaddr: NonNull<u8>, pages: usize) -> i32 {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 4 parameters, found 3
[INFO] [stdout]    |
[INFO] [stdout]    = note: `dma_dealloc` from trait: `unsafe fn(u64, NonNull<u8>, usize, bool) -> i32`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unsafe fn dma_dealloc(paddr: PhysAddr, _vaddr: NonNull<u8>, pages: usize, access_platform: bool) -> i32 {
[INFO] [stdout]    |                                                                             +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `share` has 2 parameters but the declaration in trait `virtio_drivers::Hal::share` has 3
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:28:29
[INFO] [stdout]    |
[INFO] [stdout] 28 |     unsafe fn share(buffer: NonNull<[u8]>, _direction: BufferDirection) -> PhysAddr {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 parameters, found 2
[INFO] [stdout]    |
[INFO] [stdout]    = note: `share` from trait: `unsafe fn(NonNull<[u8]>, virtio_drivers::BufferDirection, bool) -> u64`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 28 |     unsafe fn share(buffer: NonNull<[u8]>, _direction: BufferDirection, access_platform: bool) -> PhysAddr {
[INFO] [stdout]    |                                                                       +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `unshare` has 3 parameters but the declaration in trait `unshare` has 4
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:34:31
[INFO] [stdout]    |
[INFO] [stdout] 34 |     unsafe fn unshare(_paddr: PhysAddr, _buffer: NonNull<[u8]>, _direction: BufferDirection) {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 4 parameters, found 3
[INFO] [stdout]    |
[INFO] [stdout]    = note: `unshare` from trait: `unsafe fn(u64, NonNull<[u8]>, virtio_drivers::BufferDirection, bool)`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 34 |     unsafe fn unshare(_paddr: PhysAddr, _buffer: NonNull<[u8]>, _direction: BufferDirection, access_platform: bool) {
[INFO] [stdout]    |                                                                                            +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `qemu` (bin "qemu" test) due to 8 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0107]: missing generics for enum `Trap`
[INFO] [stdout]   --> qemu/src/trap/mod.rs:64:22
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl TrapHandler for Trap {
[INFO] [stdout]    |                      ^^^^ expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] note: enum defined here, with 2 generic parameters: `I`, `E`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/riscv-0.16.1/src/interrupt.rs:50:10
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub enum Trap<I, E> {
[INFO] [stdout]    |          ^^^^ -  -
[INFO] [stdout] help: add missing generic arguments
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl TrapHandler for Trap<I, E> {
[INFO] [stdout]    |                          ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `dma_alloc` has 2 parameters but the declaration in trait `virtio_drivers::Hal::dma_alloc` has 3
[INFO] [stdout]   --> qemu/src/old_impl.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn dma_alloc(pages: usize, _direction: BufferDirection) -> (PhysAddr, NonNull<u8>) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 parameters, found 2
[INFO] [stdout]    |
[INFO] [stdout]    = note: `dma_alloc` from trait: `fn(usize, virtio_drivers::BufferDirection, bool) -> (u64, NonNull<u8>)`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn dma_alloc(pages: usize, _direction: BufferDirection, access_platform: bool) -> (PhysAddr, NonNull<u8>) {
[INFO] [stdout]    |                                                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `dma_dealloc` has 3 parameters but the declaration in trait `dma_dealloc` has 4
[INFO] [stdout]   --> qemu/src/old_impl.rs:16:34
[INFO] [stdout]    |
[INFO] [stdout] 16 |     unsafe fn dma_dealloc(paddr: PhysAddr, vaddr: NonNull<u8>, pages: usize) -> i32 {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 4 parameters, found 3
[INFO] [stdout]    |
[INFO] [stdout]    = note: `dma_dealloc` from trait: `unsafe fn(u64, NonNull<u8>, usize, bool) -> i32`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 16 |     unsafe fn dma_dealloc(paddr: PhysAddr, vaddr: NonNull<u8>, pages: usize, access_platform: bool) -> i32 {
[INFO] [stdout]    |                                                                            +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `share` has 2 parameters but the declaration in trait `virtio_drivers::Hal::share` has 3
[INFO] [stdout]   --> qemu/src/old_impl.rs:28:29
[INFO] [stdout]    |
[INFO] [stdout] 28 |     unsafe fn share(buffer: NonNull<[u8]>, _direction: BufferDirection) -> PhysAddr {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 parameters, found 2
[INFO] [stdout]    |
[INFO] [stdout]    = note: `share` from trait: `unsafe fn(NonNull<[u8]>, virtio_drivers::BufferDirection, bool) -> u64`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 28 |     unsafe fn share(buffer: NonNull<[u8]>, _direction: BufferDirection, access_platform: bool) -> PhysAddr {
[INFO] [stdout]    |                                                                       +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0050]: method `unshare` has 3 parameters but the declaration in trait `unshare` has 4
[INFO] [stdout]   --> qemu/src/old_impl.rs:33:31
[INFO] [stdout]    |
[INFO] [stdout] 33 |     unsafe fn unshare(_paddr: PhysAddr, _buffer: NonNull<[u8]>, _direction: BufferDirection) {}
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 4 parameters, found 3
[INFO] [stdout]    |
[INFO] [stdout]    = note: `unshare` from trait: `unsafe fn(u64, NonNull<[u8]>, virtio_drivers::BufferDirection, bool)`
[INFO] [stdout] help: add the missing parameter from the trait
[INFO] [stdout]    |
[INFO] [stdout] 33 |     unsafe fn unshare(_paddr: PhysAddr, _buffer: NonNull<[u8]>, _direction: BufferDirection, access_platform: bool) {}
[INFO] [stdout]    |                                                                                            +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 |         (paddr, vaddr)
[INFO] [stdout]    |          ^^^^^ expected `u64`, found `usize`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert a `usize` to a `u64` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 16 |         (paddr.try_into().unwrap(), vaddr)
[INFO] [stdout]    |               ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> qemu/src/virtio_impl.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn virt_to_phys(vaddr: usize) -> PhysAddr {
[INFO] [stdout]    |                                  -------- expected `u64` because of return type
[INFO] [stdout] 41 |     vaddr
[INFO] [stdout]    |     ^^^^^ expected `u64`, found `usize`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert a `usize` to a `u64` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 41 |     vaddr.try_into().unwrap()
[INFO] [stdout]    |          ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `talc::Span::from_const_array`: Conversion from const references encourages UB. This will be removed in a future release.
[INFO] [stdout]   --> qemu/src/boot.rs:19:46
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Talc::new(unsafe { ClaimOnOom::new(Span::from_const_array(core::ptr::addr_of!(KERNEL_HEAP))) })
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0787]: the `asm!` macro is not allowed in naked functions
[INFO] [stdout]   --> qemu/src/boot.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | /         asm!("\
[INFO] [stdout] 32 | |         mv tp, a0
[INFO] [stdout] 33 | |         mv gp, a1
[INFO] [stdout] 34 | |         add t0, a0, 1
[INFO] [stdout] ...  |
[INFO] [stdout] 45 | |         options(noreturn)
[INFO] [stdout] 46 | |         );
[INFO] [stdout]    | |_________^ consider using the `naked_asm!` macro instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> qemu/src/trap/mod.rs:40:9
[INFO] [stdout]     |
[INFO] [stdout]  40 |         stvec::write(kernel_v as usize, TrapMode::Direct);
[INFO] [stdout]     |         ^^^^^^^^^^^^ -----------------  ---------------- unexpected argument #2 of type `TrapMode`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      expected `Stvec`, found `usize`
[INFO] [stdout]     |
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/riscv-0.16.1/src/register/macros.rs:208:23
[INFO] [stdout]     |
[INFO] [stdout] 208 |           pub unsafe fn write(value: $csr_type) {
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/riscv-0.16.1/src/register/stvec.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | / read_write_csr! {
[INFO] [stdout]   9 | |     /// stvec register
[INFO] [stdout]  10 | |     Stvec: 0x105,
[INFO] [stdout]  11 | |     mask: usize::MAX,
[INFO] [stdout]  12 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     = note: this error originates in the macro `$crate::write_csr_as` which comes from the expansion of the macro `read_write_csr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  40 -         stvec::write(kernel_v as usize, TrapMode::Direct);
[INFO] [stdout]  40 +         stvec::write(/* Stvec */);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> qemu/src/old_impl.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |         (paddr, NonNull::new(paddr as *mut u8).unwrap())
[INFO] [stdout]    |          ^^^^^ expected `u64`, found `usize`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert a `usize` to a `u64` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 13 |         (paddr.try_into().unwrap(), NonNull::new(paddr as *mut u8).unwrap())
[INFO] [stdout]    |               ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> qemu/src/old_test.rs:71:24
[INFO] [stdout]     |
[INFO] [stdout]  71 |         match unsafe { MmioTransport::new(header) } {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^-------- argument #2 of type `usize` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/git/checkouts/virtio-drivers-0a2b66ab1fb1c3fb/b59889b/src/transport/mmio.rs:286:19
[INFO] [stdout]     |
[INFO] [stdout] 286 |     pub unsafe fn new(header: NonNull<VirtIOHeader>, mmio_size: usize) -> Result<Self, MmioError> {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout]  71 |         match unsafe { MmioTransport::new(header, /* usize */) } {
[INFO] [stdout]     |                                                 +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `info` found for struct `TicketMutexGuard<'_, VirtIOConsole<HalImpl, _>, _>` in the current scope
[INFO] [stdout]    --> qemu/src/old_test.rs:207:24
[INFO] [stdout]     |
[INFO] [stdout] 207 |     let info = console.info();
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/build/qemu/090aeadda6579f72/out/qemu-090aeadda6579f72.long-type-2196141190249843370.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: there is a method `into` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 207 -     let info = console.info();
[INFO] [stdout] 207 +     let info = console.into();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0050, E0061, E0107, E0308, E0432, E0599, E0726, E0787.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0050`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `qemu` (bin "qemu") due to 36 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2", kill_on_drop: false }`
[INFO] [stdout] 4b32e64ecc07d11a5a5087d23d9a0e0e0d078561d302ca5997bdef095abd5be2
