Comments (7)
The test is conclusive: the fix you proposed works on such a virtualised setting. You should feel free to commit it to the main branch.
All clear.
from gitoxide.
Just wait for the test for some 24 to 48 hours.
from gitoxide.
Thanks a lot for letting me know!
gitoxide
crates use the mmap2
crate which hides these details entirely. That's great as it means there is no deeper reason behind the MAP_SHARED mode, and it shouldn't be a problem to switch to MAP_PRIVATE.
Since I probably won't be able to reproduce the issue I wonder if you'd be willing to validate a version from a PR that I could create rather swiftly?
Thanks for your help.
from gitoxide.
Thanks a lot for letting me know!
gitoxide
crates use themmap2
crate which hides these details entirely. That's great as it means there is no deeper reason behind the MAP_SHARED mode, and it shouldn't be a problem to switch to MAP_PRIVATE.Since I probably won't be able to reproduce the issue I wonder if you'd be willing to validate a version from a PR that I could create rather swiftly?
Thanks for your help.
I'll have to build the PR myself on that guest. Which will be a problem since I cannot run "cargo build" (for likely the same reason, which indeed led me down here first with gix). So it will take some amount of tweaking to get it right. Moreover, I have to go get some food. So I won't reply in a quick feedback loop. Do not expect a reply before sunday or monday...
from gitoxide.
Thanks for the quick response and for your help.
I am sorry to hear cargo
also bails out in that setup. In case, for some reason, it's not due to memmap but to C toolchains or such, you should be able to build gix
with cargo build --bin gix --no-default-features --features max-pure
, which requires only a Rust compiler and a linker and Cargo.
from gitoxide.
Just looked at the proposed fix. Yes, the memmap2 crate has a way to enforce MAP_PRIVATE. I hope this will fix it (as it will allow me to narrow down the behaviour of virtiofs). Going to get some food. Then I'll try it out.
Thank you for being so unbelievably responsive.
from gitoxide.
Bugs get the priority lane :).
from gitoxide.
Related Issues (20)
- Panic receiving pack if fetch interrupted HOT 2
- `gix clone` sets `core.symlinks` to `false` on Windows even if globally `true` HOT 1
- Checking out a dangling symlink on Windows is treated as a hard error HOT 3
- CI install-action now fails on Windows, can't find .cargo/bin
- 16 tests fail on Windows with GIX_TEST_IGNORE_ARCHIVES=1
- Tests on Windows require Git Bash or a similar environment HOT 1
- Assertion failure crash in `gix_date::time::write::<impl gix_date::Time>::write_to` HOT 3
- `core.excludesFile` config entry exists but has blank value causes error: is this considered a bug or expected behavior? HOT 1
- Nondeterministic macOS `is_symlink` assertion failure in `overwriting_files_and_lone_directories_works` HOT 1
- Backport outside traversal fix to v0.62.x HOT 2
- Installing `[email protected]` via `cargo install` not possible because the `zip` crate in the specified verision is yanked HOT 1
- Could `gix_object::Find` be async?
- "[48] An unknown option was passed in to libcurl" on CentOS 7 HOT 3
- OSS-Fuzz issue 69546 HOT 1
- Use Conventional Commits and calculate version number for releases HOT 5
- OSS-Fuzz issue 69636 HOT 1
- Fetching multiple times on Windows with gix 0.63.0 eventually results in "Could not move a temporary file into its desired place" HOT 5
- Trying to fetch only non-existant refs results in "Could not decode server reply" HOT 4
- Sovereign Tech Fund and NLNet Application
- Good first issues?
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 gitoxide.