[INFO] cloning repository https://github.com/focus-zhaos/UringForStratoVirt [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/focus-zhaos/UringForStratoVirt" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffocus-zhaos%2FUringForStratoVirt", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffocus-zhaos%2FUringForStratoVirt'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f85c6c17906758b887b28739ee17a67aecdc02d6 [INFO] testing focus-zhaos/UringForStratoVirt against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffocus-zhaos%2FUringForStratoVirt" "/workspace/builds/worker-113/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-113/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/focus-zhaos/UringForStratoVirt on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-113/source/.cargo/config [INFO] started tweaking git repo https://github.com/focus-zhaos/UringForStratoVirt [INFO] finished tweaking git repo https://github.com/focus-zhaos/UringForStratoVirt [INFO] tweaked toml for git repo https://github.com/focus-zhaos/UringForStratoVirt written to /workspace/builds/worker-113/source/Cargo.toml [INFO] crate git repo https://github.com/focus-zhaos/UringForStratoVirt already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "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.5.0 [INFO] [stderr] Downloaded addr2line v0.12.1 [INFO] [stderr] Downloaded backtrace v0.3.49 [INFO] [stderr] Downloaded vmm-sys-util v0.6.1 [INFO] [stderr] Downloaded adler32 v1.1.0 [INFO] [stderr] Downloaded syn v1.0.37 [INFO] [stderr] Downloaded kvm-bindings v0.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] efa071817cbec76039c948cddce0da246b5355ba1784dd1e8e8af4942573ad36 [INFO] running `Command { std: "docker" "start" "-a" "efa071817cbec76039c948cddce0da246b5355ba1784dd1e8e8af4942573ad36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "efa071817cbec76039c948cddce0da246b5355ba1784dd1e8e8af4942573ad36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "efa071817cbec76039c948cddce0da246b5355ba1784dd1e8e8af4942573ad36", kill_on_drop: false }` [INFO] [stdout] efa071817cbec76039c948cddce0da246b5355ba1784dd1e8e8af4942573ad36 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1add12c1b1c8de455305d4a52cda3bdabef19d7bd70d18abdd87a8b5d60d4622 [INFO] running `Command { std: "docker" "start" "-a" "1add12c1b1c8de455305d4a52cda3bdabef19d7bd70d18abdd87a8b5d60d4622", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling gimli v0.21.0 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling adler32 v1.1.0 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling syn v1.0.37 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling object v0.20.0 [INFO] [stderr] Compiling serde_derive v1.0.114 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling serde v1.0.114 [INFO] [stderr] Compiling serde_json v1.0.55 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling miniz_oxide v0.3.7 [INFO] [stderr] Compiling error-chain v0.12.4 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling vmm-sys-util v0.6.1 [INFO] [stderr] Compiling kvm-bindings v0.2.0 [INFO] [stderr] Compiling kvm-ioctls v0.5.0 [INFO] [stderr] Compiling addr2line v0.12.1 [INFO] [stderr] Compiling backtrace v0.3.49 [INFO] [stderr] Compiling util v0.1.0 (/opt/rustwide/workdir/util) [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> util/src/aio/uring.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `RawFd` [INFO] [stdout] --> util/src/aio/uring.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::CString` [INFO] [stdout] --> util/src/aio/uring.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::ffi::CString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsRawFd` [INFO] [stdout] --> util/src/aio/mod.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nr` [INFO] [stdout] --> util/src/aio/uring.rs:232:26 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn submit(&self, nr: i64, iocbp: &mut Vec<*mut UringCb>) -> Result<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_nr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | let mut sq_ptr = mmap ( [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: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | let mut cq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | let mut sqe_ptr = mmap ( [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:210:17 [INFO] [stdout] | [INFO] [stdout] 210 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:212:17 [INFO] [stdout] | [INFO] [stdout] 212 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:213:17 [INFO] [stdout] | [INFO] [stdout] 213 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:214:17 [INFO] [stdout] | [INFO] [stdout] 214 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:215:17 [INFO] [stdout] | [INFO] [stdout] 215 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:216:17 [INFO] [stdout] | [INFO] [stdout] 216 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:328:17 [INFO] [stdout] | [INFO] [stdout] 328 | let mut sq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:337:17 [INFO] [stdout] | [INFO] [stdout] 337 | let mut cq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:346:17 [INFO] [stdout] | [INFO] [stdout] 346 | let mut sqe_ptr = mmap ( [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:356:17 [INFO] [stdout] | [INFO] [stdout] 356 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:357:17 [INFO] [stdout] | [INFO] [stdout] 357 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:358:17 [INFO] [stdout] | [INFO] [stdout] 358 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:359:17 [INFO] [stdout] | [INFO] [stdout] 359 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:361:17 [INFO] [stdout] | [INFO] [stdout] 361 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:422:17 [INFO] [stdout] | [INFO] [stdout] 422 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:423:17 [INFO] [stdout] | [INFO] [stdout] 423 | let mut res_iov = (*cqe).user_data as *mut Iovec; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | let mut res_buf = *((*res_iov).iov_base as *mut [u8; 512]); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unaligned_references)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deref_nullptr)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling address_space v0.1.0 (/opt/rustwide/workdir/address_space) [INFO] [stdout] warning: field is never read: `flag` [INFO] [stdout] --> address_space/src/listener.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub flag: u32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `MemSlot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> address_space/src/listener.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 74 | #[derive(Default, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling boot_loader v0.1.0 (/opt/rustwide/workdir/boot_loader) [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling machine_manager v0.1.0 (/opt/rustwide/workdir/machine_manager) [INFO] [stdout] warning: field is never read: `persistent` [INFO] [stdout] --> machine_manager/src/socket.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | persistent: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `SocketStream` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> machine_manager/src/socket.rs:285:10 [INFO] [stdout] | [INFO] [stdout] 285 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling device_model v0.1.0 (/opt/rustwide/workdir/device_model) [INFO] [stdout] warning: unused import: `IoCmd` [INFO] [stdout] --> device_model/src/virtio/block.rs:29:46 [INFO] [stdout] | [INFO] [stdout] 29 | use util::aio::{Aio, AioCb, AioCompleteFunc, IoCmd, Iovec, UringCmd}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling StratoVirt v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 57.34s [INFO] running `Command { std: "docker" "inspect" "1add12c1b1c8de455305d4a52cda3bdabef19d7bd70d18abdd87a8b5d60d4622", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1add12c1b1c8de455305d4a52cda3bdabef19d7bd70d18abdd87a8b5d60d4622", kill_on_drop: false }` [INFO] [stdout] 1add12c1b1c8de455305d4a52cda3bdabef19d7bd70d18abdd87a8b5d60d4622 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 276494bcb55597b125abad7f7c7063298df900132d98dc2ccffefa0ae35dba80 [INFO] running `Command { std: "docker" "start" "-a" "276494bcb55597b125abad7f7c7063298df900132d98dc2ccffefa0ae35dba80", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling gimli v0.21.0 [INFO] [stderr] Compiling adler32 v1.1.0 [INFO] [stderr] Compiling object v0.20.0 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling serde v1.0.114 [INFO] [stderr] Compiling miniz_oxide v0.3.7 [INFO] [stderr] Compiling vmm-sys-util v0.6.1 [INFO] [stderr] Compiling kvm-bindings v0.2.0 [INFO] [stderr] Compiling kvm-ioctls v0.5.0 [INFO] [stderr] Compiling serde_json v1.0.55 [INFO] [stderr] Compiling addr2line v0.12.1 [INFO] [stderr] Compiling backtrace v0.3.49 [INFO] [stderr] Compiling error-chain v0.12.4 [INFO] [stderr] Compiling util v0.1.0 (/opt/rustwide/workdir/util) [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> util/src/aio/uring.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `RawFd` [INFO] [stdout] --> util/src/aio/uring.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::CString` [INFO] [stdout] --> util/src/aio/uring.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::ffi::CString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsRawFd` [INFO] [stdout] --> util/src/aio/mod.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nr` [INFO] [stdout] --> util/src/aio/uring.rs:232:26 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn submit(&self, nr: i64, iocbp: &mut Vec<*mut UringCb>) -> Result<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_nr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | let mut sq_ptr = mmap ( [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: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | let mut cq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | let mut sqe_ptr = mmap ( [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:210:17 [INFO] [stdout] | [INFO] [stdout] 210 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:212:17 [INFO] [stdout] | [INFO] [stdout] 212 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:213:17 [INFO] [stdout] | [INFO] [stdout] 213 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:214:17 [INFO] [stdout] | [INFO] [stdout] 214 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:215:17 [INFO] [stdout] | [INFO] [stdout] 215 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:216:17 [INFO] [stdout] | [INFO] [stdout] 216 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:273:21 [INFO] [stdout] | [INFO] [stdout] 273 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:328:17 [INFO] [stdout] | [INFO] [stdout] 328 | let mut sq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:337:17 [INFO] [stdout] | [INFO] [stdout] 337 | let mut cq_ptr = mmap ( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:346:17 [INFO] [stdout] | [INFO] [stdout] 346 | let mut sqe_ptr = mmap ( [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:356:17 [INFO] [stdout] | [INFO] [stdout] 356 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:357:17 [INFO] [stdout] | [INFO] [stdout] 357 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:358:17 [INFO] [stdout] | [INFO] [stdout] 358 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:359:17 [INFO] [stdout] | [INFO] [stdout] 359 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:361:17 [INFO] [stdout] | [INFO] [stdout] 361 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:422:17 [INFO] [stdout] | [INFO] [stdout] 422 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:423:17 [INFO] [stdout] | [INFO] [stdout] 423 | let mut res_iov = (*cqe).user_data as *mut Iovec; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> util/src/aio/uring.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | let mut res_buf = *((*res_iov).iov_base as *mut [u8; 512]); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unaligned_references)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: reference to packed field is unaligned [INFO] [stdout] --> util/src/offsetof.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #82523 [INFO] [stdout] = note: fields of packed structs are not properly aligned, and 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 warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deref_nullptr)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a null pointer [INFO] [stdout] --> util/src/offsetof.rs:17:19 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stdout] | [INFO] [stdout] ::: util/src/seccomp.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling address_space v0.1.0 (/opt/rustwide/workdir/address_space) [INFO] [stderr] Compiling machine_manager v0.1.0 (/opt/rustwide/workdir/machine_manager) [INFO] [stdout] warning: field is never read: `flag` [INFO] [stdout] --> address_space/src/listener.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub flag: u32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `MemSlot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> address_space/src/listener.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 74 | #[derive(Default, Copy, Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling boot_loader v0.1.0 (/opt/rustwide/workdir/boot_loader) [INFO] [stdout] warning: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling device_model v0.1.0 (/opt/rustwide/workdir/device_model) [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `persistent` [INFO] [stdout] --> machine_manager/src/socket.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | persistent: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `SocketStream` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> machine_manager/src/socket.rs:285:10 [INFO] [stdout] | [INFO] [stdout] 285 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IoCmd` [INFO] [stdout] --> device_model/src/virtio/block.rs:29:46 [INFO] [stdout] | [INFO] [stdout] 29 | use util::aio::{Aio, AioCb, AioCompleteFunc, IoCmd, Iovec, UringCmd}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling StratoVirt v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 29.46s [INFO] running `Command { std: "docker" "inspect" "276494bcb55597b125abad7f7c7063298df900132d98dc2ccffefa0ae35dba80", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "276494bcb55597b125abad7f7c7063298df900132d98dc2ccffefa0ae35dba80", kill_on_drop: false }` [INFO] [stdout] 276494bcb55597b125abad7f7c7063298df900132d98dc2ccffefa0ae35dba80 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-113/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5c58e92ff6fd97a659867ae59043132244159e6eaa949b0e0dbdd4fbe51d4f65 [INFO] running `Command { std: "docker" "start" "-a" "5c58e92ff6fd97a659867ae59043132244159e6eaa949b0e0dbdd4fbe51d4f65", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> util/src/aio/uring.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AsRawFd`, `RawFd` [INFO] [stderr] --> util/src/aio/uring.rs:10:25 [INFO] [stderr] | [INFO] [stderr] 10 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stderr] | ^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::CString` [INFO] [stderr] --> util/src/aio/uring.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ffi::CString; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `AsRawFd` [INFO] [stderr] --> util/src/aio/mod.rs:22:25 [INFO] [stderr] | [INFO] [stderr] 22 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `nr` [INFO] [stderr] --> util/src/aio/uring.rs:232:26 [INFO] [stderr] | [INFO] [stderr] 232 | pub fn submit(&self, nr: i64, iocbp: &mut Vec<*mut UringCb>) -> Result<()> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_nr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:182:17 [INFO] [stderr] | [INFO] [stderr] 182 | let mut sq_ptr = mmap ( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:191:17 [INFO] [stderr] | [INFO] [stderr] 191 | let mut cq_ptr = mmap ( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:200:17 [INFO] [stderr] | [INFO] [stderr] 200 | let mut sqe_ptr = mmap ( [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:210:17 [INFO] [stderr] | [INFO] [stderr] 210 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:211:17 [INFO] [stderr] | [INFO] [stderr] 211 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:212:17 [INFO] [stderr] | [INFO] [stderr] 212 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:213:17 [INFO] [stderr] | [INFO] [stderr] 213 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:214:17 [INFO] [stderr] | [INFO] [stderr] 214 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:215:17 [INFO] [stderr] | [INFO] [stderr] 215 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:216:17 [INFO] [stderr] | [INFO] [stderr] 216 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:273:21 [INFO] [stderr] | [INFO] [stderr] 273 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:328:17 [INFO] [stderr] | [INFO] [stderr] 328 | let mut sq_ptr = mmap ( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:337:17 [INFO] [stderr] | [INFO] [stderr] 337 | let mut cq_ptr = mmap ( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:346:17 [INFO] [stderr] | [INFO] [stderr] 346 | let mut sqe_ptr = mmap ( [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:356:17 [INFO] [stderr] | [INFO] [stderr] 356 | let mut sq_tail = (sq_ptr as *mut u8).add(p.sq_off.tail as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:357:17 [INFO] [stderr] | [INFO] [stderr] 357 | let mut sq_mask = (sq_ptr as *mut u8).add(p.sq_off.ring_mask as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:358:17 [INFO] [stderr] | [INFO] [stderr] 358 | let mut sq_arr = (sq_ptr as *mut u8).add(p.sq_off.array as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:359:17 [INFO] [stderr] | [INFO] [stderr] 359 | let mut cq_head = (cq_ptr as *mut u8).add(p.cq_off.head as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:360:17 [INFO] [stderr] | [INFO] [stderr] 360 | let mut cq_tail = (cq_ptr as *mut u8).add(p.cq_off.tail as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:361:17 [INFO] [stderr] | [INFO] [stderr] 361 | let mut cq_mask = (cq_ptr as *mut u8).add(p.cq_off.ring_mask as usize) as *mut u32; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:362:17 [INFO] [stderr] | [INFO] [stderr] 362 | let mut cqes = (cq_ptr as *mut u8).add(p.cq_off.cqes as usize) as *mut IoUringCqe; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:422:17 [INFO] [stderr] | [INFO] [stderr] 422 | let mut cqe = self.cqes.add((head & *(self.cq_mask)) as usize); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:423:17 [INFO] [stderr] | [INFO] [stderr] 423 | let mut res_iov = (*cqe).user_data as *mut Iovec; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> util/src/aio/uring.rs:424:17 [INFO] [stderr] | [INFO] [stderr] 424 | let mut res_buf = *((*res_iov).iov_base as *mut [u8; 512]); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: reference to packed field is unaligned [INFO] [stderr] --> util/src/offsetof.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:201:9 [INFO] [stderr] | [INFO] [stderr] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unaligned_references)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #82523 [INFO] [stderr] = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: reference to packed field is unaligned [INFO] [stderr] --> util/src/offsetof.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #82523 [INFO] [stderr] = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: reference to packed field is unaligned [INFO] [stderr] --> util/src/offsetof.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:210:13 [INFO] [stderr] | [INFO] [stderr] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #82523 [INFO] [stderr] = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: reference to packed field is unaligned [INFO] [stderr] --> util/src/offsetof.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:210:45 [INFO] [stderr] | [INFO] [stderr] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #82523 [INFO] [stderr] = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: reference to packed field is unaligned [INFO] [stderr] --> util/src/offsetof.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #82523 [INFO] [stderr] = note: fields of packed structs are not properly aligned, and creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: dereferencing a null pointer [INFO] [stderr] --> util/src/offsetof.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:201:9 [INFO] [stderr] | [INFO] [stderr] 201 | offset_of!(SeccompData, nr) as u32 [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deref_nullptr)]` on by default [INFO] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: dereferencing a null pointer [INFO] [stderr] --> util/src/offsetof.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | offset_of!(SeccompData, arch) as u32 [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: dereferencing a null pointer [INFO] [stderr] --> util/src/offsetof.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:210:13 [INFO] [stderr] | [INFO] [stderr] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: dereferencing a null pointer [INFO] [stderr] --> util/src/offsetof.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:210:45 [INFO] [stderr] | [INFO] [stderr] 210 | offset_of!(SeccompData, args) - offset_of!(SeccompData, instruction_pointer); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: dereferencing a null pointer [INFO] [stderr] --> util/src/offsetof.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | unsafe { &(*(std::ptr::null::<$type_name>())).$field as *const _ as usize } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed [INFO] [stderr] | [INFO] [stderr] ::: util/src/seccomp.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 211 | offset_of!(SeccompData, args) as u32 + num * offset_of_u64 as u32 [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__offset_of` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `util` (lib) generated 39 warnings [INFO] [stderr] warning: field is never read: `flag` [INFO] [stderr] --> address_space/src/listener.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | pub flag: u32, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] note: `MemSlot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> address_space/src/listener.rs:74:25 [INFO] [stderr] | [INFO] [stderr] 74 | #[derive(Default, Copy, Clone)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `address_space` (lib) generated 1 warning [INFO] [stderr] warning: field is never read: `persistent` [INFO] [stderr] --> machine_manager/src/socket.rs:290:5 [INFO] [stderr] | [INFO] [stderr] 290 | persistent: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] note: `SocketStream` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> machine_manager/src/socket.rs:285:10 [INFO] [stderr] | [INFO] [stderr] 285 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `machine_manager` (lib) generated 1 warning [INFO] [stderr] warning: unused import: `IoCmd` [INFO] [stderr] --> device_model/src/virtio/block.rs:29:46 [INFO] [stderr] | [INFO] [stderr] 29 | use util::aio::{Aio, AioCb, AioCompleteFunc, IoCmd, Iovec, UringCmd}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `device_model` (lib) generated 1 warning [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4m 48s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/stratovirt-be493678e1aedfc6) [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" "5c58e92ff6fd97a659867ae59043132244159e6eaa949b0e0dbdd4fbe51d4f65", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c58e92ff6fd97a659867ae59043132244159e6eaa949b0e0dbdd4fbe51d4f65", kill_on_drop: false }` [INFO] [stdout] 5c58e92ff6fd97a659867ae59043132244159e6eaa949b0e0dbdd4fbe51d4f65