Closed
Description
Two instances of cargo miri running concurrently can lead to the following fun situation:
- A creates and fills the Xargo.toml.
- B empties the Xargo toml.
- A runs xargo.
- (B fills the Xargo.toml but now it's too late.)
Then we end up building a no-std systroot. oops
We need to either do the Xargo.toml writing atomically via rename
or so and hope that xargo itself is fine with the concurrency, or (probably better) have some kind of file system locking.
Thanks to @matthiaskrgr for reporting this.