[INFO] cloning repository https://github.com/chenzhiy2001/ruprobes [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chenzhiy2001/ruprobes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchenzhiy2001%2Fruprobes", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchenzhiy2001%2Fruprobes'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9542c21d341a8f6e7abafa58de08986cdaf29b39 [INFO] checking chenzhiy2001/ruprobes/9542c21d341a8f6e7abafa58de08986cdaf29b39 against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchenzhiy2001%2Fruprobes" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/chenzhiy2001/ruprobes on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/chenzhiy2001/ruprobes [INFO] finished tweaking git repo https://github.com/chenzhiy2001/ruprobes [INFO] tweaked toml for git repo https://github.com/chenzhiy2001/ruprobes written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/chenzhiy2001/ruprobes 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/chenzhiy2001/trap_context_riscv` [INFO] [stderr] Updating git repository `https://github.com/rcore-os/trapframe-rs` [INFO] [stderr] Updating git repository `https://github.com/rcore-os/riscv` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded riscv-target v0.1.2 [INFO] [stderr] Downloaded x86_64 v0.14.10 [INFO] [stderr] Downloaded riscv-decode v0.2.0 [INFO] [stderr] Downloaded rustversion v1.0.13 [INFO] [stderr] Downloaded bare-metal v0.2.5 [INFO] [stderr] Downloaded volatile v0.4.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 345662b5eb055d47997a6ebec9d3767b0600c5dd5d7669ce090b9d1eea883871 [INFO] running `Command { std: "docker" "start" "-a" "345662b5eb055d47997a6ebec9d3767b0600c5dd5d7669ce090b9d1eea883871", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "345662b5eb055d47997a6ebec9d3767b0600c5dd5d7669ce090b9d1eea883871", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "345662b5eb055d47997a6ebec9d3767b0600c5dd5d7669ce090b9d1eea883871", kill_on_drop: false }` [INFO] [stdout] 345662b5eb055d47997a6ebec9d3767b0600c5dd5d7669ce090b9d1eea883871 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 14e45051f2e8ac93b0d97672fa887bc6a6b3862a3812052ac43f79461822b662 [INFO] running `Command { std: "docker" "start" "-a" "14e45051f2e8ac93b0d97672fa887bc6a6b3862a3812052ac43f79461822b662", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling regex-syntax v0.7.4 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Compiling rustversion v1.0.13 [INFO] [stderr] Compiling trapframe v0.9.0 (https://github.com/rcore-os/trapframe-rs#0f27d58f) [INFO] [stderr] Checking volatile v0.4.6 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Checking raw-cpuid v10.7.0 [INFO] [stderr] Checking riscv-decode v0.2.0 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling bare-metal v0.2.5 [INFO] [stderr] Checking x86_64 v0.14.10 [INFO] [stderr] Compiling aho-corasick v1.0.2 [INFO] [stderr] Compiling regex-automata v0.3.4 [INFO] [stderr] Compiling regex v1.9.1 [INFO] [stderr] Compiling riscv-target v0.1.2 [INFO] [stderr] Compiling riscv v0.6.0 (https://github.com/rcore-os/riscv#11d43cf7) [INFO] [stderr] Checking trap_context_riscv v0.1.0 (https://github.com/chenzhiy2001/trap_context_riscv#d0157b61) [INFO] [stderr] Checking ruprobes v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `from_raw_parts_mut` [INFO] [stdout] --> src/uprobes.rs:10:35 [INFO] [stdout] | [INFO] [stdout] 10 | use core::slice::{from_raw_parts, from_raw_parts_mut}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::slice::from_raw_parts` [INFO] [stdout] --> src/probes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use core::slice::from_raw_parts; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_export]` only has an effect on macro definitions [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | #[macro_export] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `unsafe_block_in_unsafe_fn` has been stable since 1.52.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | #![feature(unsafe_block_in_unsafe_fn)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `asm` has been stable since 1.59.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(asm)] [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/riscv_insn_decode.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 113 | Ok(Instruction::Bltu(_)) => InsnStatus::Illegal, [INFO] [stdout] | ------------------------ matches all the relevant values [INFO] [stdout] 114 | Ok(Instruction::Bge(_)) => InsnStatus::Illegal, [INFO] [stdout] 115 | Ok(Instruction::Bltu(_)) => InsnStatus::Illegal, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `from_raw_parts_mut` [INFO] [stdout] --> src/uprobes.rs:10:35 [INFO] [stdout] | [INFO] [stdout] 10 | use core::slice::{from_raw_parts, from_raw_parts_mut}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::slice::from_raw_parts` [INFO] [stdout] --> src/probes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use core::slice::from_raw_parts; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_export]` only has an effect on macro definitions [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | #[macro_export] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `unsafe_block_in_unsafe_fn` has been stable since 1.52.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | #![feature(unsafe_block_in_unsafe_fn)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `asm` has been stable since 1.59.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(asm)] [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spec` [INFO] [stdout] --> src/riscv_insn_decode.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | spec => Opcode::NOTFOUND, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_spec` [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] --> src/uprobes.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let mut uprobes_inner = self.inner.borrow_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cx` [INFO] [stdout] --> src/uprobes.rs:357:36 [INFO] [stdout] | [INFO] [stdout] 357 | fn uprobes_trap_handler(&self, cx: &mut UserContext) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `addisp` is never read [INFO] [stdout] --> src/probes.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut addisp: usize= 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CBREAK` is never constructed [INFO] [stdout] --> src/riscv_insn_decode.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum Opcode { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 58 | CBREAK, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Opcode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `disarm` is never used [INFO] [stdout] --> src/uprobes.rs:321:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl UprobesInner { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 321 | pub fn disarm(&self) {//要改动 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `uprobes_trap_handler` is never used [INFO] [stdout] --> src/uprobes.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 332 | impl Uprobes { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 357 | fn uprobes_trap_handler(&self, cx: &mut UserContext) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` block uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | fn get_exec_path() -> String; [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] = note: `#[warn(improper_ctypes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/riscv_insn_decode.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 113 | Ok(Instruction::Bltu(_)) => InsnStatus::Illegal, [INFO] [stdout] | ------------------------ matches all the relevant values [INFO] [stdout] 114 | Ok(Instruction::Bge(_)) => InsnStatus::Illegal, [INFO] [stdout] 115 | Ok(Instruction::Bltu(_)) => InsnStatus::Illegal, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spec` [INFO] [stdout] --> src/riscv_insn_decode.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | spec => Opcode::NOTFOUND, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_spec` [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] --> src/uprobes.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let mut uprobes_inner = self.inner.borrow_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cx` [INFO] [stdout] --> src/uprobes.rs:357:36 [INFO] [stdout] | [INFO] [stdout] 357 | fn uprobes_trap_handler(&self, cx: &mut UserContext) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `addisp` is never read [INFO] [stdout] --> src/probes.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut addisp: usize= 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CBREAK` is never constructed [INFO] [stdout] --> src/riscv_insn_decode.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum Opcode { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 58 | CBREAK, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Opcode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `disarm` is never used [INFO] [stdout] --> src/uprobes.rs:321:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl UprobesInner { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 321 | pub fn disarm(&self) {//要改动 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `uprobes_trap_handler` is never used [INFO] [stdout] --> src/uprobes.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 332 | impl Uprobes { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 357 | fn uprobes_trap_handler(&self, cx: &mut UserContext) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` block uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | fn get_exec_path() -> String; [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] = note: `#[warn(improper_ctypes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.91s [INFO] running `Command { std: "docker" "inspect" "14e45051f2e8ac93b0d97672fa887bc6a6b3862a3812052ac43f79461822b662", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14e45051f2e8ac93b0d97672fa887bc6a6b3862a3812052ac43f79461822b662", kill_on_drop: false }` [INFO] [stdout] 14e45051f2e8ac93b0d97672fa887bc6a6b3862a3812052ac43f79461822b662