[INFO] cloning repository https://github.com/MatthewZelriche/LanternOS-2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MatthewZelriche/LanternOS-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMatthewZelriche%2FLanternOS-2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMatthewZelriche%2FLanternOS-2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dff995271117e151256c1871b413cd6ec8d619a4 [INFO] checking MatthewZelriche/LanternOS-2023/dff995271117e151256c1871b413cd6ec8d619a4 against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMatthewZelriche%2FLanternOS-2023" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/MatthewZelriche/LanternOS-2023 on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config.toml [INFO] removed /workspace/builds/worker-7-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/MatthewZelriche/LanternOS-2023 [INFO] finished tweaking git repo https://github.com/MatthewZelriche/LanternOS-2023 [INFO] tweaked toml for git repo https://github.com/MatthewZelriche/LanternOS-2023 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/MatthewZelriche/LanternOS-2023 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" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] warning: /workspace/builds/worker-7-tc1/source/libs/arch/raspi/Cargo.toml: unused manifest key: package.crate-type [INFO] [stderr] warning: /workspace/builds/worker-7-tc1/source/libs/elf-parse/Cargo.toml: unused manifest key: package.crate-type [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/MatthewZelriche/lantern-allocators` [INFO] [stderr] Updating git repository `https://github.com/rafalh/rust-fatfs` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded log v0.4.20 [INFO] [stderr] Downloaded tock-registers v0.8.1 [INFO] [stderr] Downloaded arrayvec v0.7.4 [INFO] [stderr] Downloaded bitfield v0.14.0 [INFO] [stderr] Downloaded generic_once_cell v0.1.1 [INFO] [stderr] Downloaded scopeguard v1.2.0 [INFO] [stderr] Downloaded autocfg v1.1.0 [INFO] [stderr] Downloaded semver-parser v0.7.0 [INFO] [stderr] Downloaded num-derive v0.3.3 [INFO] [stderr] Downloaded rustc_version v0.2.3 [INFO] [stderr] Downloaded num-traits v0.2.16 [INFO] [stderr] Downloaded bit_field v0.10.2 [INFO] [stderr] Downloaded proc-macro2 v1.0.66 [INFO] [stderr] Downloaded fallible-iterator v0.2.0 [INFO] [stderr] Downloaded align-data v0.1.0 [INFO] [stderr] Downloaded semver v0.9.0 [INFO] [stderr] Downloaded aarch64-cpu v9.3.1 [INFO] [stderr] Downloaded quote v1.0.33 [INFO] [stderr] Downloaded unsafe_unwrap v0.1.0 [INFO] [stderr] Downloaded memoffset v0.5.6 [INFO] [stderr] Downloaded unicode-ident v1.0.11 [INFO] [stderr] Downloaded static_assertions v1.1.0 [INFO] [stderr] Downloaded lock_api v0.4.10 [INFO] [stderr] Downloaded fdt-rs v0.4.3 [INFO] [stderr] Downloaded endian-type-rs v0.1.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 64be22cb20d281ee5a07ca30505ff8d135b8eb8641dcf987074c83c22d2ce119 [INFO] running `Command { std: "docker" "start" "-a" "64be22cb20d281ee5a07ca30505ff8d135b8eb8641dcf987074c83c22d2ce119", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "64be22cb20d281ee5a07ca30505ff8d135b8eb8641dcf987074c83c22d2ce119", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "64be22cb20d281ee5a07ca30505ff8d135b8eb8641dcf987074c83c22d2ce119", kill_on_drop: false }` [INFO] [stdout] 64be22cb20d281ee5a07ca30505ff8d135b8eb8641dcf987074c83c22d2ce119 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6102966eb1e4383e091527569da0b0c5c8691f7dabef91849ef89e260605996e [INFO] running `Command { std: "docker" "start" "-a" "6102966eb1e4383e091527569da0b0c5c8691f7dabef91849ef89e260605996e", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] warning: /opt/rustwide/workdir/libs/elf-parse/Cargo.toml: unused manifest key: package.crate-type [INFO] [stderr] warning: /opt/rustwide/workdir/libs/arch/raspi/Cargo.toml: unused manifest key: package.crate-type [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Checking tock-registers v0.8.1 [INFO] [stderr] Compiling unicode-ident v1.0.11 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking bitfield v0.14.0 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Compiling kernel v0.1.0 (/opt/rustwide/workdir/kernel) [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Checking endian-type-rs v0.1.4 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking unsafe_unwrap v0.1.0 [INFO] [stderr] Compiling bootloader-raspi v0.1.0 (/opt/rustwide/workdir/bootloader/raspi) [INFO] [stderr] Checking fallible-iterator v0.2.0 [INFO] [stderr] Checking elf-parse v0.1.0 (/opt/rustwide/workdir/libs/elf-parse) [INFO] [stderr] Checking align-data v0.1.0 [INFO] [stderr] Checking fatfs v0.4.0 (https://github.com/rafalh/rust-fatfs?rev=8831657#8831657e) [INFO] [stderr] Checking aarch64-cpu v9.3.1 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Checking generic_once_cell v0.1.1 [INFO] [stderr] Checking allocators v0.1.0 (https://github.com/MatthewZelriche/lantern-allocators#ec9c068a) [INFO] [stderr] Checking raspi v0.1.0 (/opt/rustwide/workdir/libs/arch/raspi) [INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library [INFO] [stdout] --> libs/arch/raspi/src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(core_intrinsics)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using it is strongly discouraged [INFO] [stdout] = note: `#[warn(internal_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | "stlxr {res:w}, {temp}, [{lock_ptr}]", [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 26 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:21:22 [INFO] [stdout] | [INFO] [stdout] 21 | "cmp {res:w}, #0", // If res is 0, someone else mucked with this memory address since we called ldaxr! [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 26 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Set lock_succeed to the value of res [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 44 | res = inout(reg) lock_succeed, [INFO] [stdout] | ----------------------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Attempt to free the mutex [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 69 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | "cmp {res:w}, #0", // We may have tried to free the mutex at the moment someone else was trying to lock it [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 69 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library [INFO] [stdout] --> libs/arch/raspi/src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(core_intrinsics)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using it is strongly discouraged [INFO] [stdout] = note: `#[warn(internal_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | "stlxr {res:w}, {temp}, [{lock_ptr}]", [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 26 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:21:22 [INFO] [stdout] | [INFO] [stdout] 21 | "cmp {res:w}, #0", // If res is 0, someone else mucked with this memory address since we called ldaxr! [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 26 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Set lock_succeed to the value of res [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 44 | res = inout(reg) lock_succeed, [INFO] [stdout] | ----------------------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Attempt to free the mutex [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 69 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: invalid asm template modifier for this register class [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | "cmp {res:w}, #0", // We may have tried to free the mutex at the moment someone else was trying to lock it [INFO] [stdout] | ^^^^^^^ template modifier [INFO] [stdout] ... [INFO] [stdout] 69 | res = in(reg) 0, [INFO] [stdout] | --------------- argument [INFO] [stdout] | [INFO] [stdout] = note: the `reg` register class supports the following template modifiers: `l`, `x`, `e`, `r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `pointer_is_aligned` has been stable since 1.79.0 and no longer requires an attribute to enable [INFO] [stdout] --> libs/arch/raspi/src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(pointer_is_aligned)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `pointer_is_aligned` has been stable since 1.79.0 and no longer requires an attribute to enable [INFO] [stdout] --> libs/arch/raspi/src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(pointer_is_aligned)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | "ldaxr {temp}, [{lock_ptr}]", // Read lock variable, setting exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 17 | "cmp {temp}, #1", // Is this mutex already locked? Then try again... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 18 | "beq 2b", [INFO] [stdout] 19 | "ldr {temp}, =1", // Mutex was free during ldaxr, now we try to update the lock exclusively [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | "stlxr {res:w}, {temp}, [{lock_ptr}]", [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] = note: `#[warn(asm_sub_register)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | "ldaxr {temp}, [{lock_ptr}]", // Read lock variable, setting exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 36 | "cmp {temp}, #1", // Is this mutex already locked? Bail out and return false [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 37 | "beq 2f", [INFO] [stdout] 38 | "ldr {temp}, =1", // Try to update the lock exclusively... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 39 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Set lock_succeed to the value of res [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:54:24 [INFO] [stdout] | [INFO] [stdout] 54 | "ldaxr {temp}, [{lock_ptr}]", // Set the exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | "ldr {temp}, =0", [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 61 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Attempt to free the mutex [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | "ldaxr {temp}, [{lock_ptr}]", // Read lock variable, setting exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 17 | "cmp {temp}, #1", // Is this mutex already locked? Then try again... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 18 | "beq 2b", [INFO] [stdout] 19 | "ldr {temp}, =1", // Mutex was free during ldaxr, now we try to update the lock exclusively [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | "stlxr {res:w}, {temp}, [{lock_ptr}]", [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] = note: `#[warn(asm_sub_register)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | "ldaxr {temp}, [{lock_ptr}]", // Read lock variable, setting exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 36 | "cmp {temp}, #1", // Is this mutex already locked? Bail out and return false [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 37 | "beq 2f", [INFO] [stdout] 38 | "ldr {temp}, =1", // Try to update the lock exclusively... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 39 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Set lock_succeed to the value of res [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: formatting may not be suitable for sub-register argument [INFO] [stdout] --> libs/arch/raspi/src/concurrency/mutex.rs:54:24 [INFO] [stdout] | [INFO] [stdout] 54 | "ldaxr {temp}, [{lock_ptr}]", // Set the exclusive monitor [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | "ldr {temp}, =0", [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 61 | "stlxr {res:w}, {temp}, [{lock_ptr}]", // Attempt to free the mutex [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | temp = in(reg) 123, [INFO] [stdout] | --- for this argument [INFO] [stdout] | [INFO] [stdout] = help: use `{0:e}` to have the register formatted as `eax` (for 32-bit values) [INFO] [stdout] = help: or use `{0:r}` to keep the default formatting of `rax` (for 64-bit values) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature 'pointer_is_aligned_to' [INFO] [stdout] --> libs/arch/raspi/src/peripherals/mailbox.rs:44:25 [INFO] [stdout] | [INFO] [stdout] 44 | assert!(msg_ptr.is_aligned_to(16)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #96284 for more information [INFO] [stdout] = help: add `#![feature(pointer_is_aligned_to)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature 'pointer_is_aligned_to' [INFO] [stdout] --> libs/arch/raspi/src/peripherals/mailbox.rs:44:25 [INFO] [stdout] | [INFO] [stdout] 44 | assert!(msg_ptr.is_aligned_to(16)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #96284 for more information [INFO] [stdout] = help: add `#![feature(pointer_is_aligned_to)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] [INFO] [stderr] error: could not compile `raspi` (lib test) due to 7 previous errors; 5 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `raspi` (lib) due to 7 previous errors; 5 warnings emitted [INFO] running `Command { std: "docker" "inspect" "6102966eb1e4383e091527569da0b0c5c8691f7dabef91849ef89e260605996e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6102966eb1e4383e091527569da0b0c5c8691f7dabef91849ef89e260605996e", kill_on_drop: false }` [INFO] [stdout] 6102966eb1e4383e091527569da0b0c5c8691f7dabef91849ef89e260605996e