[INFO] cloning repository https://github.com/lowenware/leos-kernel [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lowenware/leos-kernel" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flowenware%2Fleos-kernel", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flowenware%2Fleos-kernel'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bd1aa4587ca58217159a7921771da0146ad43ca8 [INFO] checking lowenware/leos-kernel against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flowenware%2Fleos-kernel" "/workspace/builds/worker-3/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lowenware/leos-kernel on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/lowenware/leos-kernel [INFO] finished tweaking git repo https://github.com/lowenware/leos-kernel [INFO] tweaked toml for git repo https://github.com/lowenware/leos-kernel written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/lowenware/leos-kernel already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ee0731caa5f3c278842494669358089aca05886af6d6f61936ae4cc0f944ec9f [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "ee0731caa5f3c278842494669358089aca05886af6d6f61936ae4cc0f944ec9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ee0731caa5f3c278842494669358089aca05886af6d6f61936ae4cc0f944ec9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ee0731caa5f3c278842494669358089aca05886af6d6f61936ae4cc0f944ec9f", kill_on_drop: false }` [INFO] [stdout] ee0731caa5f3c278842494669358089aca05886af6d6f61936ae4cc0f944ec9f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ce5fe8dcdbddf86224e5b789867454a3eba522b241e924249b730e548c59d9ed [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "ce5fe8dcdbddf86224e5b789867454a3eba522b241e924249b730e548c59d9ed", kill_on_drop: false }` [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Checking leos-kernel v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0432]: unresolved imports `crate::platform::UART0`, `crate::platform::TIMER0` [INFO] [stdout] --> src/log.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::platform::{UART0, TIMER0}; [INFO] [stdout] | ^^^^^ ^^^^^^ no `TIMER0` in `platform` [INFO] [stdout] | | [INFO] [stdout] | no `UART0` in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:298:33 [INFO] [stdout] | [INFO] [stdout] 298 | let mut address = platform::MEMORY_BASE; [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_SIZE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:300:62 [INFO] [stdout] | [INFO] [stdout] 300 | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `get_interrupt_controller` in module `platform` [INFO] [stdout] --> src/irq.rs:23:25 [INFO] [stdout] | [INFO] [stdout] 23 | let ic0 = platform::get_interrupt_controller(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `get_interrupt_controller` in module `platform` [INFO] [stdout] --> src/irq.rs:51:25 [INFO] [stdout] | [INFO] [stdout] 51 | let ic0 = platform::get_interrupt_controller(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/memory.rs:55:30 [INFO] [stdout] | [INFO] [stdout] 55 | memory_map.add(platform::MEMORY_BASE, platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_SIZE` in module `platform` [INFO] [stdout] --> src/memory.rs:55:53 [INFO] [stdout] | [INFO] [stdout] 55 | memory_map.add(platform::MEMORY_BASE, platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `init` in module `platform` [INFO] [stdout] --> src/main.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | platform::init(); [INFO] [stdout] | ^^^^ not found in `platform` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 22 | use crate::aarch64::drivers::mmu::init; [INFO] [stdout] | [INFO] [stdout] 22 | use crate::memory::init; [INFO] [stdout] | [INFO] [stdout] 22 | use crate::scheduler::init; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `crate::platform::UART0`, `crate::platform::TIMER0` [INFO] [stdout] --> src/log.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::platform::{UART0, TIMER0}; [INFO] [stdout] | ^^^^^ ^^^^^^ no `TIMER0` in `platform` [INFO] [stdout] | | [INFO] [stdout] | no `UART0` in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/boot.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub unsafe extern "C" fn _start() -> ! { [INFO] [stdout] 25 | | [INFO] [stdout] 26 | | if cpu::core_id() == 0 { [INFO] [stdout] | |_____- [INFO] [stdout] 27 | || let current_el = CurrentEL.read() & CurrentEL::EL_MASK; [INFO] [stdout] 28 | || if current_el == CurrentEL::EL2_VALUE { [INFO] [stdout] 29 | || // Do not trap access to EL1 physical timer registers to EL2 [INFO] [stdout] ... || [INFO] [stdout] 46 | || } [INFO] [stdout] 47 | || } [INFO] [stdout] | ||_____- non-asm is unsupported in naked functions [INFO] [stdout] 48 | | [INFO] [stdout] 49 | | cpu::hang() [INFO] [stdout] | | ----------- non-asm is unsupported in naked functions [INFO] [stdout] 50 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unsupported_naked_functions)]` 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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: Rust ABI is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | unsafe fn boot() -> ! { [INFO] [stdout] | ^^^^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | llvm_asm!("adr $0, __bss_base" : "=r"(bss_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | llvm_asm!("adr $0, __bss_end" : "=r"(bss_end) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/boot.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | / unsafe fn boot() -> ! { [INFO] [stdout] 55 | | [INFO] [stdout] 56 | | // Each EL has own stack [INFO] [stdout] 57 | | SPSel.write(SPSel::SP_ELx); [INFO] [stdout] | | --------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 60 | | let bss_base: *mut usize; [INFO] [stdout] | | ------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 61 | | let bss_end: *mut usize; [INFO] [stdout] | | ------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 62 | | llvm_asm!("adr $0, __bss_base" : "=r"(bss_base) ::: "volatile"); [INFO] [stdout] 63 | | llvm_asm!("adr $0, __bss_end" : "=r"(bss_end) ::: "volatile"); [INFO] [stdout] | | -------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] 64 | | zero_volatile(bss_base, bss_end); [INFO] [stdout] | | --------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 67 | | let (kernel_base, kernel_size) = mmu::init(); [INFO] [stdout] | | --------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 73 | | VBAR_EL1.write(exception_vector_table as usize as u64); [INFO] [stdout] | | ------------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 76 | | kernel_main(kernel_base, kernel_size); [INFO] [stdout] | | -------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 77 | | } [INFO] [stdout] | |_^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a function or static [INFO] [stdout] --> src/aarch64/context.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 14 | / extern "C" { [INFO] [stdout] 15 | | pub fn aarch64_switch_context(current_addr: usize, next_addr: usize); [INFO] [stdout] 16 | | pub fn aarch64_start_task(); [INFO] [stdout] 17 | | } [INFO] [stdout] | |_____- not a function or static [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` 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] [INFO] [stdout] [INFO] [stdout] warning: Rust ABI is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:292:15 [INFO] [stdout] | [INFO] [stdout] 292 | pub unsafe fn init() -> (usize, usize) { [INFO] [stdout] | ^^^^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:327:5 [INFO] [stdout] | [INFO] [stdout] 327 | llvm_asm!("adr $0, __kernel_base" : "=r"(kernel_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | llvm_asm!("adr $0, __rodata_base" : "=r"(rodata_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:329:5 [INFO] [stdout] | [INFO] [stdout] 329 | llvm_asm!("adr $0, __data_base" : "=r"(data_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | llvm_asm!("adr $0, __kernel_end" : "=r"(kernel_end) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:292:1 [INFO] [stdout] | [INFO] [stdout] 292 | / pub unsafe fn init() -> (usize, usize) { [INFO] [stdout] 293 | | // set up MMU: [INFO] [stdout] 294 | | let kernel_base: usize; [INFO] [stdout] | | ----------------------- non-asm is unsupported in naked functions [INFO] [stdout] 295 | | let data_base: usize; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 296 | | let rodata_base: usize; [INFO] [stdout] | | ----------------------- non-asm is unsupported in naked functions [INFO] [stdout] 297 | | let kernel_end: usize; [INFO] [stdout] | | ---------------------- non-asm is unsupported in naked functions [INFO] [stdout] 298 | | let mut address = platform::MEMORY_BASE; [INFO] [stdout] | | ---------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 299 | | let mut start = index_L1(address); [INFO] [stdout] | | ---------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 300 | | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | | ---------------------------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 303 | / | TCR_EL1.write( [INFO] [stdout] 304 | | | TCR_EL1::IPS_36BIT [INFO] [stdout] 305 | | | | TCR_EL1::TG1_4KB [INFO] [stdout] 306 | | | | TCR_EL1::SH1_INNER_SHAREABLE [INFO] [stdout] ... | | [INFO] [stdout] 314 | | | | TCR_EL1::T0SZ(64 - ADDRESS_BITS as u64) [INFO] [stdout] 315 | | | ); [INFO] [stdout] | |__|______- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 318 | / | MAIR_EL1.write( [INFO] [stdout] 319 | | | MAIR_EL1::attr(DEVICE_ATTR, MAIR_EL1::device::nGnRE) [INFO] [stdout] 320 | | | | MAIR_EL1::attr(MEMORY_ATTR, MAIR_EL1::normal::inner::WriteBackNonTransient [INFO] [stdout] 321 | | | | MAIR_EL1::normal::inner::ReadAllocate | MAIR_EL1::normal::inner::WriteAllocate [INFO] [stdout] ... | | [INFO] [stdout] 324 | | | ), [INFO] [stdout] 325 | | | ); [INFO] [stdout] | |__|______- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 328 | | llvm_asm!("adr $0, __rodata_base" : "=r"(rodata_base) ::: "volatile"); [INFO] [stdout] | | ---------------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] 329 | | llvm_asm!("adr $0, __data_base" : "=r"(data_base) ::: "volatile"); [INFO] [stdout] | | ------------------------------------------------------------------ multiple asm blocks are unsupported in naked functions [INFO] [stdout] 330 | | llvm_asm!("adr $0, __kernel_end" : "=r"(kernel_end) ::: "volatile"); [INFO] [stdout] | | -------------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 333 | | TTBR0_IDENTITY = kernel_end as u64; [INFO] [stdout] | | ----------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 336 | | TTBR0_EL1.write(kernel_end as u64 | TTBR0_EL1::CNP); [INFO] [stdout] | | ---------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 339 | | let mut table = &mut *(kernel_end as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 340 | | for i in start..end { [INFO] [stdout] | | ---------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 346 | | address = kernel_end + PAGE_SIZE; [INFO] [stdout] | | --------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 347 | | [INFO] [stdout] 348 | | TTBR1_EL1.write(address as u64 | TTBR0_EL1::CNP); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 349 | | [INFO] [stdout] 350 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 351 | | address += PAGE_SIZE; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 352 | | table.set(0, address, KERNEL_DATA | TABLE); [INFO] [stdout] | | ------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 355 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 356 | | address += PAGE_SIZE; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 357 | | table.set(0, address, KERNEL_DATA | TABLE); [INFO] [stdout] | | ------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 360 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 361 | | end = (kernel_end - kernel_base) >> PAGE_BITS; [INFO] [stdout] | | ---------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 362 | / | if end > 512 { [INFO] [stdout] 363 | | | cpu::hang(); [INFO] [stdout] 364 | | | } [INFO] [stdout] | |__|_____- non-asm is unsupported in naked functions [INFO] [stdout] 365 | | address = kernel_base; [INFO] [stdout] | | ---------------------- non-asm is unsupported in naked functions [INFO] [stdout] 366 | | [INFO] [stdout] 367 | | let mut flags = KERNEL_CODE; [INFO] [stdout] | | ---------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 368 | | [INFO] [stdout] 369 | | for i in 0..end { [INFO] [stdout] | | ------ non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 381 | | address += 4 * PAGE_SIZE; [INFO] [stdout] | | ------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 386 | | table.set(end, 0xBADC0FFEE, flags); [INFO] [stdout] | | ----------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 387 | | start = end + 1; [INFO] [stdout] | | ---------------- non-asm is unsupported in naked functions [INFO] [stdout] 388 | | end = start + STACK_PAGES; [INFO] [stdout] | | -------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 389 | | for i in start..end { [INFO] [stdout] | | ---------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 395 | | cpu::sp::write(KERNEL_BASE | (end << PAGE_BITS)); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 398 | | cpu::lr::write(cpu::lr::read() - kernel_base + KERNEL_BASE); [INFO] [stdout] | | ------------------------------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 401 | | SCTLR_EL1.set(SCTLR_EL1::M); [INFO] [stdout] | | ---------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 402 | | [INFO] [stdout] 403 | | cpu::isb(); [INFO] [stdout] | | ----------- non-asm is unsupported in naked functions [INFO] [stdout] 404 | | [INFO] [stdout] 405 | | (kernel_base, address - kernel_base) [INFO] [stdout] | | ------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 406 | | } [INFO] [stdout] | |_^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:298:33 [INFO] [stdout] | [INFO] [stdout] 298 | let mut address = platform::MEMORY_BASE; [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_SIZE` in module `platform` [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:300:62 [INFO] [stdout] | [INFO] [stdout] 300 | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `get_interrupt_controller` in module `platform` [INFO] [stdout] --> src/irq.rs:23:25 [INFO] [stdout] | [INFO] [stdout] 23 | let ic0 = platform::get_interrupt_controller(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `get_interrupt_controller` in module `platform` [INFO] [stdout] --> src/irq.rs:51:25 [INFO] [stdout] | [INFO] [stdout] 51 | let ic0 = platform::get_interrupt_controller(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_BASE` in module `platform` [INFO] [stdout] --> src/memory.rs:55:30 [INFO] [stdout] | [INFO] [stdout] 55 | memory_map.add(platform::MEMORY_BASE, platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MEMORY_SIZE` in module `platform` [INFO] [stdout] --> src/memory.rs:55:53 [INFO] [stdout] | [INFO] [stdout] 55 | memory_map.add(platform::MEMORY_BASE, platform::MEMORY_SIZE); [INFO] [stdout] | ^^^^^^^^^^^ not found in `platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `init` in module `platform` [INFO] [stdout] --> src/main.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | platform::init(); [INFO] [stdout] | ^^^^ not found in `platform` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 22 | use crate::aarch64::drivers::mmu::init; [INFO] [stdout] | [INFO] [stdout] 22 | use crate::memory::init; [INFO] [stdout] | [INFO] [stdout] 22 | use crate::scheduler::init; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0152]: found duplicate lang item `oom` [INFO] [stdout] --> src/memory.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | fn on_alloc_error(layout: alloc::alloc::Layout) -> ! { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the lang item is first defined in crate `std` (which `test` depends on) [INFO] [stdout] = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/a609fb45efad59dfd459c76e50899be9f0583b5a/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-25c6acf8063a3802.rlib [INFO] [stdout] = note: second definition in the local crate (`leos_kernel`) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl` [INFO] [stdout] --> src/panic.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | fn on_panic(info: &PanicInfo) -> ! { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the lang item is first defined in crate `std` (which `test` depends on) [INFO] [stdout] = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/a609fb45efad59dfd459c76e50899be9f0583b5a/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-25c6acf8063a3802.rlib [INFO] [stdout] = note: second definition in the local crate (`leos_kernel`) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/boot.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub unsafe extern "C" fn _start() -> ! { [INFO] [stdout] 25 | | [INFO] [stdout] 26 | | if cpu::core_id() == 0 { [INFO] [stdout] | |_____- [INFO] [stdout] 27 | || let current_el = CurrentEL.read() & CurrentEL::EL_MASK; [INFO] [stdout] 28 | || if current_el == CurrentEL::EL2_VALUE { [INFO] [stdout] 29 | || // Do not trap access to EL1 physical timer registers to EL2 [INFO] [stdout] ... || [INFO] [stdout] 46 | || } [INFO] [stdout] 47 | || } [INFO] [stdout] | ||_____- non-asm is unsupported in naked functions [INFO] [stdout] 48 | | [INFO] [stdout] 49 | | cpu::hang() [INFO] [stdout] | | ----------- non-asm is unsupported in naked functions [INFO] [stdout] 50 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unsupported_naked_functions)]` 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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: Rust ABI is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | unsafe fn boot() -> ! { [INFO] [stdout] | ^^^^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | llvm_asm!("adr $0, __bss_base" : "=r"(bss_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/boot.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | llvm_asm!("adr $0, __bss_end" : "=r"(bss_end) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/boot.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | / unsafe fn boot() -> ! { [INFO] [stdout] 55 | | [INFO] [stdout] 56 | | // Each EL has own stack [INFO] [stdout] 57 | | SPSel.write(SPSel::SP_ELx); [INFO] [stdout] | | --------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 60 | | let bss_base: *mut usize; [INFO] [stdout] | | ------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 61 | | let bss_end: *mut usize; [INFO] [stdout] | | ------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 62 | | llvm_asm!("adr $0, __bss_base" : "=r"(bss_base) ::: "volatile"); [INFO] [stdout] 63 | | llvm_asm!("adr $0, __bss_end" : "=r"(bss_end) ::: "volatile"); [INFO] [stdout] | | -------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] 64 | | zero_volatile(bss_base, bss_end); [INFO] [stdout] | | --------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 67 | | let (kernel_base, kernel_size) = mmu::init(); [INFO] [stdout] | | --------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 73 | | VBAR_EL1.write(exception_vector_table as usize as u64); [INFO] [stdout] | | ------------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 76 | | kernel_main(kernel_base, kernel_size); [INFO] [stdout] | | -------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 77 | | } [INFO] [stdout] | |_^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a function or static [INFO] [stdout] --> src/aarch64/context.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 14 | / extern "C" { [INFO] [stdout] 15 | | pub fn aarch64_switch_context(current_addr: usize, next_addr: usize); [INFO] [stdout] 16 | | pub fn aarch64_start_task(); [INFO] [stdout] 17 | | } [INFO] [stdout] | |_____- not a function or static [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` 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] [INFO] [stdout] [INFO] [stdout] warning: Rust ABI is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:292:15 [INFO] [stdout] | [INFO] [stdout] 292 | pub unsafe fn init() -> (usize, usize) { [INFO] [stdout] | ^^^^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:327:5 [INFO] [stdout] | [INFO] [stdout] 327 | llvm_asm!("adr $0, __kernel_base" : "=r"(kernel_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | llvm_asm!("adr $0, __rodata_base" : "=r"(rodata_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:329:5 [INFO] [stdout] | [INFO] [stdout] 329 | llvm_asm!("adr $0, __data_base" : "=r"(data_base) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the LLVM-style inline assembly is unsupported in naked functions [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | llvm_asm!("adr $0, __kernel_end" : "=r"(kernel_end) ::: "volatile"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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 #32408 [INFO] [stdout] = help: use the new asm! syntax specified in RFC 2873 [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: naked functions must contain a single asm block [INFO] [stdout] --> src/aarch64/drivers/mmu.rs:292:1 [INFO] [stdout] | [INFO] [stdout] 292 | / pub unsafe fn init() -> (usize, usize) { [INFO] [stdout] 293 | | // set up MMU: [INFO] [stdout] 294 | | let kernel_base: usize; [INFO] [stdout] | | ----------------------- non-asm is unsupported in naked functions [INFO] [stdout] 295 | | let data_base: usize; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 296 | | let rodata_base: usize; [INFO] [stdout] | | ----------------------- non-asm is unsupported in naked functions [INFO] [stdout] 297 | | let kernel_end: usize; [INFO] [stdout] | | ---------------------- non-asm is unsupported in naked functions [INFO] [stdout] 298 | | let mut address = platform::MEMORY_BASE; [INFO] [stdout] | | ---------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 299 | | let mut start = index_L1(address); [INFO] [stdout] | | ---------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 300 | | let mut end = index_L1(platform::MEMORY_BASE + platform::MEMORY_SIZE); [INFO] [stdout] | | ---------------------------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 303 | / | TCR_EL1.write( [INFO] [stdout] 304 | | | TCR_EL1::IPS_36BIT [INFO] [stdout] 305 | | | | TCR_EL1::TG1_4KB [INFO] [stdout] 306 | | | | TCR_EL1::SH1_INNER_SHAREABLE [INFO] [stdout] ... | | [INFO] [stdout] 314 | | | | TCR_EL1::T0SZ(64 - ADDRESS_BITS as u64) [INFO] [stdout] 315 | | | ); [INFO] [stdout] | |__|______- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 318 | / | MAIR_EL1.write( [INFO] [stdout] 319 | | | MAIR_EL1::attr(DEVICE_ATTR, MAIR_EL1::device::nGnRE) [INFO] [stdout] 320 | | | | MAIR_EL1::attr(MEMORY_ATTR, MAIR_EL1::normal::inner::WriteBackNonTransient [INFO] [stdout] 321 | | | | MAIR_EL1::normal::inner::ReadAllocate | MAIR_EL1::normal::inner::WriteAllocate [INFO] [stdout] ... | | [INFO] [stdout] 324 | | | ), [INFO] [stdout] 325 | | | ); [INFO] [stdout] | |__|______- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 328 | | llvm_asm!("adr $0, __rodata_base" : "=r"(rodata_base) ::: "volatile"); [INFO] [stdout] | | ---------------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] 329 | | llvm_asm!("adr $0, __data_base" : "=r"(data_base) ::: "volatile"); [INFO] [stdout] | | ------------------------------------------------------------------ multiple asm blocks are unsupported in naked functions [INFO] [stdout] 330 | | llvm_asm!("adr $0, __kernel_end" : "=r"(kernel_end) ::: "volatile"); [INFO] [stdout] | | -------------------------------------------------------------------- multiple asm blocks are unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 333 | | TTBR0_IDENTITY = kernel_end as u64; [INFO] [stdout] | | ----------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 336 | | TTBR0_EL1.write(kernel_end as u64 | TTBR0_EL1::CNP); [INFO] [stdout] | | ---------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 339 | | let mut table = &mut *(kernel_end as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 340 | | for i in start..end { [INFO] [stdout] | | ---------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 346 | | address = kernel_end + PAGE_SIZE; [INFO] [stdout] | | --------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 347 | | [INFO] [stdout] 348 | | TTBR1_EL1.write(address as u64 | TTBR0_EL1::CNP); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 349 | | [INFO] [stdout] 350 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 351 | | address += PAGE_SIZE; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 352 | | table.set(0, address, KERNEL_DATA | TABLE); [INFO] [stdout] | | ------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 355 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 356 | | address += PAGE_SIZE; [INFO] [stdout] | | --------------------- non-asm is unsupported in naked functions [INFO] [stdout] 357 | | table.set(0, address, KERNEL_DATA | TABLE); [INFO] [stdout] | | ------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 360 | | table = &mut *(address as *mut TranslationTable); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 361 | | end = (kernel_end - kernel_base) >> PAGE_BITS; [INFO] [stdout] | | ---------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 362 | / | if end > 512 { [INFO] [stdout] 363 | | | cpu::hang(); [INFO] [stdout] 364 | | | } [INFO] [stdout] | |__|_____- non-asm is unsupported in naked functions [INFO] [stdout] 365 | | address = kernel_base; [INFO] [stdout] | | ---------------------- non-asm is unsupported in naked functions [INFO] [stdout] 366 | | [INFO] [stdout] 367 | | let mut flags = KERNEL_CODE; [INFO] [stdout] | | ---------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 368 | | [INFO] [stdout] 369 | | for i in 0..end { [INFO] [stdout] | | ------ non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 381 | | address += 4 * PAGE_SIZE; [INFO] [stdout] | | ------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 386 | | table.set(end, 0xBADC0FFEE, flags); [INFO] [stdout] | | ----------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 387 | | start = end + 1; [INFO] [stdout] | | ---------------- non-asm is unsupported in naked functions [INFO] [stdout] 388 | | end = start + STACK_PAGES; [INFO] [stdout] | | -------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 389 | | for i in start..end { [INFO] [stdout] | | ---------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 395 | | cpu::sp::write(KERNEL_BASE | (end << PAGE_BITS)); [INFO] [stdout] | | ------------------------------------------------- non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 398 | | cpu::lr::write(cpu::lr::read() - kernel_base + KERNEL_BASE); [INFO] [stdout] | | ------------------------------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] ... | [INFO] [stdout] 401 | | SCTLR_EL1.set(SCTLR_EL1::M); [INFO] [stdout] | | ---------------------------- non-asm is unsupported in naked functions [INFO] [stdout] 402 | | [INFO] [stdout] 403 | | cpu::isb(); [INFO] [stdout] | | ----------- non-asm is unsupported in naked functions [INFO] [stdout] 404 | | [INFO] [stdout] 405 | | (kernel_base, address - kernel_base) [INFO] [stdout] | | ------------------------------------ non-asm is unsupported in naked functions [INFO] [stdout] 406 | | } [INFO] [stdout] | |_^ [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 #32408 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SystemTimer` [INFO] [stdout] --> src/log.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::drivers::{SystemTimer}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::drivers::SerialDevice` [INFO] [stdout] --> src/log.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::drivers::SerialDevice; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InterruptController` [INFO] [stdout] --> src/irq.rs:9:22 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::drivers::{InterruptController}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 9 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0432. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stderr] error: could not compile `leos-kernel` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused import: `SystemTimer` [INFO] [stdout] --> src/log.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::drivers::{SystemTimer}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::drivers::SerialDevice` [INFO] [stdout] --> src/log.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::drivers::SerialDevice; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InterruptController` [INFO] [stdout] --> src/irq.rs:9:22 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::drivers::{InterruptController}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 11 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0152, E0425, E0432. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0152`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "ce5fe8dcdbddf86224e5b789867454a3eba522b241e924249b730e548c59d9ed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce5fe8dcdbddf86224e5b789867454a3eba522b241e924249b730e548c59d9ed", kill_on_drop: false }` [INFO] [stdout] ce5fe8dcdbddf86224e5b789867454a3eba522b241e924249b730e548c59d9ed