[INFO] cloning repository https://github.com/scsmithr/submarine
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/scsmithr/submarine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscsmithr%2Fsubmarine", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscsmithr%2Fsubmarine'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2f9cbbede175bac08fbabdbf1d57a78790052c30
[INFO] testing scsmithr/submarine against beta-2024-12-08 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscsmithr%2Fsubmarine" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/scsmithr/submarine on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/scsmithr/submarine
[INFO] finished tweaking git repo https://github.com/scsmithr/submarine
[INFO] tweaked toml for git repo https://github.com/scsmithr/submarine written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/scsmithr/submarine 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" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded kvm-ioctls v0.1.0
[INFO] [stderr]   Downloaded kvm-bindings v0.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8edda44070afc34aa46c461820ececa86167b0afb17f653c1aa66ff8dea4c1b3
[INFO] running `Command { std: "docker" "start" "-a" "8edda44070afc34aa46c461820ececa86167b0afb17f653c1aa66ff8dea4c1b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8edda44070afc34aa46c461820ececa86167b0afb17f653c1aa66ff8dea4c1b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8edda44070afc34aa46c461820ececa86167b0afb17f653c1aa66ff8dea4c1b3", kill_on_drop: false }`
[INFO] [stdout] 8edda44070afc34aa46c461820ececa86167b0afb17f653c1aa66ff8dea4c1b3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 596e27e8aa8f52afe40fb87510a6227d0e1e761656f10383ef9e335fa423967c
[INFO] running `Command { std: "docker" "start" "-a" "596e27e8aa8f52afe40fb87510a6227d0e1e761656f10383ef9e335fa423967c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.58
[INFO] [stderr]    Compiling memchr v2.2.0
[INFO] [stderr]    Compiling regex v1.1.7
[INFO] [stderr]    Compiling ucd-util v0.1.3
[INFO] [stderr]    Compiling lazy_static v1.3.0
[INFO] [stderr]    Compiling utf8-ranges v1.0.3
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling cfg-if v0.1.9
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling humantime v1.2.0
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling regex-syntax v0.6.7
[INFO] [stderr]    Compiling termcolor v1.0.5
[INFO] [stderr]    Compiling kvm-bindings v0.1.1
[INFO] [stderr]    Compiling boot_gen v0.1.0 (/opt/rustwide/workdir/boot_gen)
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling kvm-ioctls v0.1.0
[INFO] [stderr]    Compiling aho-corasick v0.7.3
[INFO] [stderr]    Compiling env_logger v0.6.1
[INFO] [stderr]    Compiling submarine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: couldn't read `/boot/vmlinuz-linux`: No such file or directory (os error 2)
[INFO] [stdout]   --> src/main.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |     img.extend_from_slice(include_bytes!("/boot/vmlinuz-linux"));
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Addressable`
[INFO] [stdout]  --> src/main.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use memory::{Addressable, Region};
[INFO] [stdout]   |              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/device/mod.rs:48:40
[INFO] [stdout]    |
[INFO] [stdout] 48 |     devices: BTreeMap<Range, Arc<Mutex<Addressable>>>,
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 48 |     devices: BTreeMap<Range, Arc<Mutex<dyn Addressable>>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/device/mod.rs:62:59
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn insert(&mut self, range: Range, dev: Arc<Mutex<Addressable>>) -> Result<()> {
[INFO] [stdout]    |                                                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn insert(&mut self, range: Range, dev: Arc<Mutex<dyn Addressable>>) -> Result<()> {
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/device/mod.rs:87:79
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn device_at_addr(&self, addr: &MemoryAddr) -> Option<(MemoryAddr, &Mutex<Addressable>)> {
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn device_at_addr(&self, addr: &MemoryAddr) -> Option<(MemoryAddr, &Mutex<dyn Addressable>)> {
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/loader/mod.rs:81:38
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn configure_gdt_table(mem: &mut Memory, sregs: &mut kvm_sregs) -> Result<()> {
[INFO] [stdout]    |                                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn configure_gdt_table(mem: &mut dyn Memory, sregs: &mut kvm_sregs) -> Result<()> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/loader/mod.rs:109:30
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn write_gdt_entry(mem: &mut Memory, entry: &gdt::Entry, addr: MemoryAddr) -> Result<()> {
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn write_gdt_entry(mem: &mut dyn Memory, entry: &gdt::Entry, addr: MemoryAddr) -> Result<()> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/vm/mod.rs:189:19
[INFO] [stdout]     |
[INFO] [stdout] 189 |         mem: &mut Memory,
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 189 |         mem: &mut dyn Memory,
[INFO] [stdout]     |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/device/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Addressable`
[INFO] [stdout]  --> src/vm/mod.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::memory::{Addressable, Memory, MemoryAddr, Region};
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0793]: reference to packed field is unaligned
[INFO] [stdout]   --> src/loader/mod.rs:69:36
[INFO] [stdout]    |
[INFO] [stdout] 69 |     debug!("start: {}, count: {}", hdr.code32_start, kernel_size);
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses
[INFO] [stdout]    = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced)
[INFO] [stdout]    = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers)
[INFO] [stdout]    = note: this error originates in the macro `format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/memory/memorymap.rs:32:34
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> src/memory/memorymap.rs:32:52
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]   --> src/memory/memorymap.rs:32:63
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]    |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/memory/memorymap.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn read(&self, mut buf: &mut [u8], addr: MemoryAddr) -> Result<usize> {
[INFO] [stdout]    |                    ----^^^
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]    --> src/memory/memorymap.rs:104:34
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]    --> src/memory/memorymap.rs:104:52
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> src/memory/memorymap.rs:104:63
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn write_to<F: Write>(&self, addr: MemoryAddr, f: &mut F, count: usize) -> Result<usize> {
[INFO] [stdout]     |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kvm`
[INFO] [stdout]   --> src/vm/mod.rs:50:53
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn init_memory(&mut self, mem: &MemoryMmap, kvm: &KvmContext) -> Result<()> {
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_kvm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vm`
[INFO] [stdout]    --> src/vm/mod.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |         vm: &Vm,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_vm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0793`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `submarine` (bin "submarine") due to 2 previous errors; 18 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "596e27e8aa8f52afe40fb87510a6227d0e1e761656f10383ef9e335fa423967c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "596e27e8aa8f52afe40fb87510a6227d0e1e761656f10383ef9e335fa423967c", kill_on_drop: false }`
[INFO] [stdout] 596e27e8aa8f52afe40fb87510a6227d0e1e761656f10383ef9e335fa423967c
