Comments (3)
Hm, difficult to say. I looked in the history and it changed a lot. For instance, I revised the Interface to the PCI drivers and its initialization. We should create a process to monitor the performance changes.
from hermit-rs.
I guess just building old version from git is a reasonable way to identify when it happened. Chances are, that it is just a bug as it seems not to be related to any of the features. Or maybe the features are not yet implemented perfectly.
Anyhow, git bisect[0] should be able to help. even though I am not sure how well it works with submodules.
[0] https://git-scm.com/docs/git-bisect
from hermit-rs.
So, I gave it a try, but I failed to build old versions of this repo. Here is what I did:
- Get an old commit hash by calling somthing like
git rev-list -n 1 --before="2020-08-10 13:37" master
- Cheking out that commit with
git checkout <hash> && git submodule update
- Setting an old compiler for that directory via
rustup override set nightly-2020-07-01
- Build with
cargo clean && cargo build -Z build-std=std,core,alloc,panic_abort --target x86_64-unknown-hermit
Is that fine or am I missing something? When I follow these steps I get signal: 11, SIGSEGV: invalid memory reference
from rustc. Here is the complete error message
error: could not compile `rusty-hermit`
Caused by:
process didn't exit successfully: `rustc --crate-name hermit --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type staticlib --emit=dep-info,link -C opt-level=1 -C panic=abort -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --cfg 'feature="acpi"' --cfg 'feature="default"' --cfg 'feature="pci"' -C metadata=cb82b3bd2931e5a5 -C extra-filename=-cb82b3bd2931e5a5 --out-dir /home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps --target x86_64-unknown-hermit-kernel -C incremental=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/incremental -L dependency=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps -L dependency=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/debug/deps --extern 'noprelude:alloc=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/liballoc-6700b37dcd2cb618.rlib' --extern bitflags=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libbitflags-8906d5332f6e55fb.rlib --extern 'noprelude:compiler_builtins=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libcompiler_builtins-8c90b50ae572c4b5.rlib' --extern 'noprelude:core=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libcore-215ed17ad95cbdff.rlib' --extern log=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/liblog-aac0c3535167ff43.rlib --extern multiboot=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libmultiboot-874de2c4013bf80d.rlib --extern num=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libnum-5b5c297c932dd375.rlib --extern num_derive=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/debug/deps/libnum_derive-030eb7efc88f88d8.so --extern num_traits=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libnum_traits-b65ba7142768480e.rlib --extern x86=/home/jbreitbart/temp/h/rusty-hermit/target/x86_64-unknown-hermit/debug/build/hermit-sys-34dd046e24681a92/out/target/x86_64-unknown-hermit-kernel/debug/deps/libx86-8b2b5c4cc34191e3.rlib -Z unstable-options` (signal: 11, SIGSEGV: invalid memory reference)
--- stderr
thread 'main' panicked at 'assertion failed: output.status.success()', hermit-sys/build.rs:51:5
stack backtrace:
0: std::panicking::begin_panic
at /home/jbreitbart/.rustup/toolchains/nightly-2020-09-12-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:505
1: build_script_build::build_hermit
at ./build.rs:51
2: build_script_build::build
at ./build.rs:97
3: build_script_build::main
at ./build.rs:154
4: core::ops::function::FnOnce::call_once
at /home/jbreitbart/.rustup/toolchains/nightly-2020-09-12-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
from hermit-rs.
Related Issues (20)
- Virtq: Endless loop by opening internal file using virtiofsd
- Decouple hermit-abi and hermit-sys
- Could not find `llvm-objcopy` in rustc sysroot HOT 6
- hello world demo: connection aborted HOT 3
- hello_world demo, missing symbols HOT 3
- Request for info: running hermit-based applications on top of Xen HOT 3
- Move cmath to hermit-builtins HOT 1
- rusty-demo fails to build on windows HOT 7
- failed to run rusty-hermit on QEMU qemu-system-aarch64 HOT 1
- Where do we mention that RustyHermit supports `aarch64`?
- Hermit doesn't work on aarch64: rusty-loader can't find DTB for aarch64 HOT 1
- Include `tcp` in the default features of `hermit-sys`
- hermit-abi 0.3.2 git tag and yanking explanation HOT 4
- Add platform support document to Rust docs HOT 1
- Enable generate-link-to-definition
- Support automatic rebuilds for path dependencies of kernel HOT 1
- Can't build with khronos-egl as dependency HOT 3
- Become a Tier 2 Rust target
- Newer kernel submodule required for RISC-V support HOT 4
- Compilation with Hermit dependency as part of a workspace fails HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hermit-rs.