Ralf Jung
a4e7e1e6b5
fix retagging of vtable ptrs
2022-07-03 11:56:29 -04:00
Ralf Jung
5f7bc9739b
move arc_drop test to miri-test-libstd
...
and make weak memory consistency test a bit faster again
2022-07-03 08:13:58 -04:00
Ralf Jung
b4520e4591
test fs::read_link surface function
2022-07-02 13:32:04 -04:00
Ralf Jung
98254f67af
pointer tag tracking: on creation, log the offsets it is created for
2022-07-02 11:33:29 -04:00
bors
428245072e
Auto merge of #2306 - RalfJung:unix, r=RalfJung
...
make some things available for all Unixes
2022-07-02 13:45:27 +00:00
Ralf Jung
ae51998191
male libc.rs at least build on FreeBSD
2022-07-02 09:45:00 -04:00
bors
c17e68d9be
Auto merge of #2300 - InfRandomness:freebsd-environ-extern-impl, r=RalfJung
...
Extend `environ` linux extern implementation to freebsd
This fixes the `env` test on freebsd, and enables the CI test
Signed-off-by: InfRandomness <infrandomness@gmail.com>
2022-07-02 12:57:14 +00:00
bors
24c5eaf8bc
Auto merge of #2305 - RalfJung:rustup, r=RalfJung
...
rustup
2022-07-02 12:38:40 +00:00
Ralf Jung
c0cbb662d2
rustup
2022-07-02 08:38:07 -04:00
InfRandomness
a26be7ea5f
Enable env test on freebsd
...
Signed-off-by: InfRandomness <infrandomness@gmail.com>
2022-07-02 12:42:14 +02:00
Ralf Jung
d09db1660b
fix and slightly improve data race reports
2022-07-01 20:13:44 -04:00
Ralf Jung
7f3fbbdee7
allocation tracking: also print size, alignment, kind of the allocation
2022-06-30 22:24:23 -04:00
Oli Scherer
a9f9d48b1a
Support no-std targets and test it in CI
2022-06-30 12:51:22 +00:00
Ralf Jung
a2e61aeeff
rustup
2022-06-29 21:31:27 -04:00
bors
5974e7d4a9
Auto merge of #2287 - RalfJung:field-retagging, r=RalfJung
...
stacked borrows: add option for recursive field retagging
2022-06-29 23:04:07 +00:00
Ralf Jung
955f961f83
merge two SB test files
2022-06-29 18:22:30 -04:00
Ralf Jung
c4e86e103e
add option for recursive field retagging
2022-06-29 18:22:30 -04:00
Christian Legnitto
73a1a27a45
Support gettimeofday
on more than macos
...
This appears to be in linux and in openbsd as well:
* https://github.com/torvalds/linux/blob/master/lib/vdso/gettimeofday.c
* https://github.com/openbsd/src/blob/master/sys/sys/time.h#L439
Co-authored-by: Ralf Jung <post@ralfj.de>
2022-06-29 17:48:04 -04:00
Ralf Jung
839c120b40
fmt
2022-06-29 10:09:18 -04:00
Ralf Jung
ea8dba411b
improve atomics test coverage
2022-06-29 09:31:11 -04:00
Ralf Jung
28dea673be
rustup
2022-06-29 08:33:06 -04:00
Ralf Jung
8bd4bbe3e4
tweak int2ptr diagnostics
2022-06-28 08:52:22 -04:00
bors
aaaed51ab8
Auto merge of #2279 - RalfJung:adjacent-allocs, r=RalfJung
...
Allow non-ZST allocations to be adjacent
Also `cargo update` in test-cargo-miri... no need to make a separate PR for that right?...
2022-06-28 02:52:23 +00:00
Ralf Jung
c16b380d6b
finally we can actually have adjacent allocations :)
2022-06-27 22:52:02 -04:00
Ralf Jung
098704e10f
make use of get_alloc_info
2022-06-27 21:22:46 -04:00
bors
7fafbde038
Auto merge of #2275 - RalfJung:permissive-provenance-for-all, r=RalfJung
...
Enable permissive provenance by default
This completes the plan laid out in https://github.com/rust-lang/miri/issues/2133 :
- We use permissive provenance with wildcard pointers by default.
- We print a warning on int2ptr casts. `-Zmiri-permissive-provenance` suppresses the warning; `-Zmiri-strict-provenance` turns it into a hard error.
- Raw pointer tagging is now always enabled, so we remove the `-Zmiri-tag-raw-pointers` flag and the code for untagged pointers. (Passing the flag still works, for compatibility -- but we just ignore it, with a warning.)
We also fix an intptrcast issue:
- Only live allocations are considered when computing the AllocId from an address.
So, finally, Miri has a good story for ptr2int2ptr roundtrips *and* no weird false negatives when doing raw pointer stuff with Stacked Borrows. :-) 🎉 Thanks a lot to everyone who helped with this, in particular `@carbotaniuman` who convinced me this is even possible.
Fixes https://github.com/rust-lang/miri/issues/2133
Fixes https://github.com/rust-lang/miri/issues/1866
Fixes https://github.com/rust-lang/miri/issues/1993
2022-06-28 01:20:40 +00:00
Ralf Jung
c1eddbc7fe
show int2ptr warning once for each span (but don't duplicate the long help)
2022-06-27 20:50:45 -04:00
Ralf Jung
67e89b53e2
fix warning text
2022-06-27 20:04:46 -04:00
bors
f5593de579
Auto merge of #2221 - InfRandomness:freebsd-target-support, r=RalfJung
...
Freebsd-target-support
Implement freebsd as a target for miri
2022-06-27 17:40:15 +00:00
Ralf Jung
fb186a2f2d
make sure a thread is joined
2022-06-27 11:44:45 -04:00
Ralf Jung
294ef15adb
more int2ptr cast tests, and fix casting of addresses inside dead allocations
2022-06-26 22:19:56 -04:00
Ralf Jung
13d425daeb
make permissive provenance and raw-ptr tagging the default
2022-06-26 21:14:42 -04:00
infrandomness
97a512070a
Fix pending reviews
2022-06-27 01:39:24 +02:00
infrandomness
9130034337
Initial freebsd work
2022-06-27 01:39:24 +02:00
bors
ab88ba4299
Auto merge of #2270 - RalfJung:futex-ordering, r=RalfJung
...
test that futexes induce appropriate synchronization
This fails when I remove the `validate_lock_acquire` or `validate_lock_release` from `futex_wake`. So finally we got those code paths actually covered in tests. :)
2022-06-26 03:54:43 +00:00
Ralf Jung
e667ccb459
test that futexes induce appropriate synchronization
2022-06-25 23:40:58 -04:00
Ralf Jung
5aeba7f86b
make a bunch of tests look more like how they did before rustfmt
2022-06-25 23:31:24 -04:00
Ralf Jung
d3ca71ba37
test that &mut !Unpin references are protected
2022-06-25 19:15:11 -04:00
Ralf Jung
7c025a8f0e
test for forgetting locked mutex
2022-06-25 16:01:00 -04:00
Ralf Jung
e5022bf48a
join all the threads
2022-06-25 15:46:47 -04:00
Ralf Jung
58c79c5b6f
tweaks and feedback
2022-06-24 22:02:17 -04:00
Ralf Jung
4fbb284a99
implement 'delimited' expose tracking so we still detect some UB
2022-06-24 20:05:56 -04:00
Ralf Jung
8d6fdaa024
make the tests pass
...
(and some formatting)
2022-06-24 18:03:02 -04:00
Ralf Jung
2deb9e5dae
add exposed_only_ro test
2022-06-24 16:21:47 -04:00
carbotaniuman
57ce47b728
Handle wildcard pointers in SB
2022-06-24 16:10:23 -04:00
David Tolnay
e5f40ca9cb
Bless stderr files after rustfmt
2022-06-23 13:08:52 -07:00
David Tolnay
8833197a62
Manual adjustments
2022-06-23 13:08:52 -07:00
David Tolnay
a23eb46b5b
Format late arrivals with rustfmt
2022-06-23 13:08:52 -07:00
bors
c38e1e9d62
Auto merge of #2250 - rust-lang:gesundheit, r=oli-obk
...
Require local annotations for local diagnostics
if/when we get flaky diagnostics we can revisit and add more helpers for those
2022-06-23 13:49:56 +00:00
Oli Scherer
c4ffe680e3
Require local annotations for local diagnostics
2022-06-23 13:49:02 +00:00