Andy Wang
a5db2c32e5
Refactor to hide *_next_id functions
2022-05-12 20:31:40 +01:00
Andy Wang
1a7f6d504a
Use proper atomic rmw for {mutex, rwlock, cond, srwlock}_get_or_create_id
2022-05-11 22:42:39 +01:00
David Tolnay
4b523fce18
Resolve clippy::unnecessary_mut_passed
...
error: the method `validate_lock_acquire` doesn't need a mutable reference
--> src/sync.rs:477:49
|
477 | data_race.validate_lock_acquire(&mut condvar.data_race, waiter.thread);
| ^^^^^^^^^^^^^^^^^^^^^^
|
= note: `-D clippy::unnecessary-mut-passed` implied by `-D clippy::all`
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed
2022-04-29 15:59:19 -07:00
Ralf Jung
855af088b8
remove no longer needed imports
2022-04-09 11:32:49 -04:00
Mara Bos
53ed500c92
Fully support FUTEX_*_BITSET.
2022-04-06 23:48:14 +02:00
Ralf Jung
6e1f3cd8ff
adjust for MemoryExtra being merged into Machine
2022-04-05 11:11:53 -04:00
Ralf Jung
a1233a721d
adjust Miri to Pointer type overhaul
2021-07-16 10:10:12 +02:00
Ralf Jung
4e231bab5e
format much of Miri
2021-05-16 11:48:28 +02:00
JCTyBlaidd
3268f56a97
Fix review changes
2020-11-22 17:28:12 +00:00
JCTyBlaidd
69fb6413dd
Tidy up comments and function layout, should fix most of the review notes.
2020-11-15 18:30:26 +00:00
JCTyBlaidd
89814f1b3f
Initial data-race detector,
...
passes all current tests but additional tests are required
2020-11-02 02:57:05 +00:00
Mara Bos
e64ead2f46
Implement timeouts for FUTEX_WAIT.
2020-10-02 23:34:14 +02:00
Mara Bos
712e8006b3
Improve handling of the addr
argument in SYS_futex.
2020-10-02 10:47:36 +02:00
Mara Bos
6c2f36eb6b
Erase tag from futex pointers.
2020-10-01 21:06:16 +02:00
Mara Bos
1ffc5bb563
Implement futex_wait and futex_wake.
...
This does not support futex_wait with a timeout yet.
2020-10-01 20:55:54 +02:00
Ralf Jung
3a5bcb97ed
move rwlock dequeuing to shared code, and use that code for Windows rwlocks
2020-06-28 11:28:46 +02:00
Ralf Jung
0b6ec575b9
make mutex_unlock infallible
2020-05-30 22:54:37 +02:00
Ralf Jung
acb3ec0866
test and fix for rwlock unlock bug
2020-05-30 22:48:43 +02:00
Ralf Jung
a80821e046
also combine re-locking into the dequeue-and-unblock operation
2020-05-30 22:35:58 +02:00
Ralf Jung
7589bc7ba9
sync cleanup: mark infallible ops as such; consistent combine en/dequeue with (un)block; comments
2020-05-30 22:29:27 +02:00
Ralf Jung
9ff77f6cb3
add an assertion
2020-05-25 09:59:01 +02:00
Vytautas Astrauskas
bd97074517
Small changes.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
8b5a9836be
Small changes.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
fdfd56b75b
Small changes.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
3da61fa427
Add comments explaining the declare_id macro.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
0bbac12751
Change how the time is handled.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
044a068c67
Improve code readability and comments.
2020-05-25 00:02:54 +02:00
Vytautas Astrauskas
679245769b
Implement support for synchronization primitives.
2020-05-25 00:02:54 +02:00