Commit Graph

3810 Commits

Author SHA1 Message Date
bors
29b0bbf859 Auto merge of #1189 - RalfJung:cleanup, r=RalfJung
some foreign_items cleanup

Cc @christianpoveda
2020-02-23 18:11:37 +00:00
Ralf Jung
4a9a0a9078 avoid lowercasing platforms 2020-02-23 18:54:08 +01:00
Ralf Jung
e575fb1f57 improve comments 2020-02-23 18:52:12 +01:00
Ralf Jung
beb82ea4a4 add private helper trait for fs shim 2020-02-23 18:52:12 +01:00
Ralf Jung
5d35548985 helpers.rs cleanup 2020-02-23 18:52:12 +01:00
bors
2752d1b74b Auto merge of #1167 - christianpoveda:shims-refactor, r=RalfJung
Reorganize shims by platform

Fixes https://github.com/rust-lang/miri/issues/1161. I am currently testing which shims belong to which platform. If you are reading this and know the answer for any of those please write me :P

Edit: this is a list of the shims I haven't been able to figure out to which platform they belong:
 -~~`malloc`~~
 -~~`calloc`~~
 -~~`posix_memalign`~~
 -~~`free`~~
 -~~`realloc`~~
 -~~`__rust_alloc`~~
 -~~`__rust_alloc_zeroed`~~
 -~~`__rust_dealloc`~~
 -~~`__rust_realloc`~~
 -~~`__rust_maybe_catch_panic`~~
 -~~`syscall`~~
 -~~`getrandom`~~
 -~~`dlsym`~~
 -~~`memcmp`~~
 -~~`memrchr`~~
 -~~`memchr`~~
 -~~`strlen`~~
 -~~`signal`~~
 -~~`sigaction`~~
 -~~`sigaltstack`~~
 -~~`sysconf`~~
 -~~`sched_getaffinity`~~
 -~~`isatty`~~
 -~~`pthread_key_create`~~
 -~~`pthread_key_delete`~~
 -~~`pthread_getspecific`~~
 -~~`pthread_setspecific`~~
 -~~`pthread_attr_init`~~
 -~~`pthread_attr_destroy`~~
 -~~`pthread_self`~~
 -~~`pthread_attr_setstacksize`~~
 -~~`pthread_attr_getstack`~~
 -~~`pthread_create`~~
 -~~`pthread_mutexattr_init`~~
 -~~`pthread_mutexattr_settype`~~
 -~~`pthread_mutex_init`~~
 -~~`pthread_mutexattr_destroy`~~
 -~~`pthread_mutex_lock`~~
 -~~`pthread_mutex_unlock`~~
 -~~`pthread_mutex_destroy`~~
 -~~`pthread_rwlock_rdlock`~~
 -~~`pthread_rwlock_unlock`~~
 -~~`pthread_rwlock_wrlock`~~
 -~~`pthread_rwlock_destroy`~~
 -~~`pthread_condattr_init`~~
 -~~`pthread_condattr_setclock`~~
 -~~`pthread_cond_init`~~
 -~~`pthread_condattr_destroy`~~
 -~~`pthread_cond_destroy`~~
 -~~`pthread_atfork`~~
 -~~`posix_fadvise`~~
 -~~`mmap`~~
 -~~`mprotect`~~
2020-02-23 17:03:30 +00:00
Christian Poveda
208665836e
panic if target platform is incorrect instead 2020-02-22 09:02:29 -05:00
Christian Poveda
c2bcab55b0
improve docs 2020-02-22 08:55:45 -05:00
bors
c40a31e93c Auto merge of #1185 - RalfJung:readme, r=RalfJung
fix README

With https://github.com/rust-lang/miri/pull/1127, we do not abort execution any more when the tracked tag gets popped, we just show a backtrace.
2020-02-22 10:58:53 +00:00
Ralf Jung
86a4354746 fix README 2020-02-22 11:58:21 +01:00
Christian Poveda
9e9a090026
minor fixes 2020-02-22 02:18:42 -05:00
bors
a3dad216ee Auto merge of #1188 - RalfJung:bootstrap, r=RalfJung
dont overwrite bootstrap flags
2020-02-21 19:07:37 +00:00
Ralf Jung
08332bc730 dont overwrite bootstrap flags 2020-02-21 20:06:31 +01:00
bors
5b8462066d Auto merge of #1187 - RalfJung:rustup, r=RalfJung
fix for const-prop lint changes

Cc https://github.com/rust-lang/rust/issues/69331
2020-02-21 10:06:24 +00:00
Ralf Jung
3e2f29a079 remove some no-longer-needed allow(const_err) 2020-02-21 11:05:56 +01:00
Ralf Jung
0e7e5b9655 fix test-cargo-miri 2020-02-21 11:03:52 +01:00
Ralf Jung
627d7cba64 fix for const-prop lint changes 2020-02-21 10:33:00 +01:00
bors
fe8068d145 Auto merge of #1184 - divergentdave:rename-error-test, r=RalfJung
Test error case of std::fs::rename

As suggested [here](https://github.com/rust-lang/miri/pull/1158#issuecomment-586459463) this PR adds an additional test case for calling rename on a file path that doesn't exist.
2020-02-21 07:36:14 +00:00
David Cook
32a354efa3 Test error case of std::fs::rename 2020-02-20 21:54:52 -06:00
bors
056a68d7d0 Auto merge of #1182 - rust-lang:rustup, r=RalfJung
rustup

We got a CI failure from our cronjob. It looks spurious, but better safe than sorry.
2020-02-20 10:10:14 +00:00
Ralf Jung
a60dfcf6e7 rustup 2020-02-20 11:09:12 +01:00
Christian Poveda
bb3a711b3e
rename platform specific shims 2020-02-19 17:53:33 -05:00
Christian Poveda
3418b40dac
remove syscall shim from macos and move getrandom to linux module 2020-02-19 17:48:16 -05:00
Christian Poveda
b213f88b58
promote memrchr to work on any platform 2020-02-19 17:48:15 -05:00
Christian Poveda
9a7bc3972c
promote open and lseek shims to posix 2020-02-19 17:48:15 -05:00
Christian Poveda
dbef2340b2
add docs for `emulate_foreign_item_by_bame 2020-02-19 17:48:15 -05:00
Christian Poveda
32bc015e35
reorganize comments for shim's classification 2020-02-19 17:48:15 -05:00
Christian Poveda
bc7513bffd
move CreateThread to windows shims 2020-02-19 17:48:15 -05:00
Christian Poveda
1dbc0c9869
remove hack for panics 2020-02-19 17:48:15 -05:00
Christian Poveda
b819493585
move remaining shims 2020-02-19 17:48:15 -05:00
Christian Poveda
63160c66cd
move pthread related functions 2020-02-19 17:48:15 -05:00
Christian Poveda
8fe7543191
add helper function for target platform checks 2020-02-19 17:47:34 -05:00
bors
62bc08af18 Auto merge of #1180 - RalfJung:fs-refact, r=RalfJung
Slight refactoring of FS test
2020-02-19 10:17:32 +00:00
Ralf Jung
3cd13cb174 test a bit more 2020-02-19 11:14:30 +01:00
Ralf Jung
f79c453860 factor more common code 2020-02-19 11:12:30 +01:00
Ralf Jung
8b31763816 fs test: factor some common code 2020-02-19 11:12:30 +01:00
bors
12170f10d8 Auto merge of #1179 - RalfJung:rustup, r=RalfJung
bump Rust (no changes needed)
2020-02-19 09:08:57 +00:00
bors
2d02e105d1 Auto merge of #1156 - divergentdave:fcntl-F_DUPFD_CLOEXEC, r=RalfJung
Add F_DUPFD/F_DUPFD_CLOEXEC to fcntl shim

This adds support for `F_DUPFD` and `F_DUPFD_CLOEXEC` to the shim for `fcntl`. (The `FileHandler` does not track the `FD_CLOEXEC` flag for open files, so these commands are effectively the same.) These changes enable using `File::try_clone`.

I also changed the initial value of the `low` field in `FileHandler`, so that it matches the intent of the preceding comment. The `open` shim was pre-incrementing it when choosing new file descriptor numbers, so FD 3 was being skipped.
2020-02-19 08:45:04 +00:00
Ralf Jung
56f9ee2c2d bump Rust (no changes needed) 2020-02-19 09:15:12 +01:00
David Cook
ae7d98b68f Extract constant for minimum fd 2020-02-18 18:06:33 -06:00
David Cook
0933314bff Rewrite file system tests 2020-02-17 22:36:33 -06:00
David Cook
8216f3c0f3 Back out placeholder variants from FileHandle 2020-02-17 22:24:33 -06:00
David Cook
a6a8f09f1e Address review comments 2020-02-17 22:24:33 -06:00
David Cook
962a740426 Rewrite file descriptor handling 2020-02-17 22:24:33 -06:00
David Cook
636ad629f8 Functional test of cloned file handle 2020-02-17 22:24:33 -06:00
David Cook
eda35e153b Add methods to FileHandler 2020-02-17 22:24:33 -06:00
David Cook
1de9d107cf Style fixes 2020-02-17 22:24:33 -06:00
David Cook
3aff803868 Add comment 2020-02-17 22:24:33 -06:00
David Cook
085874d1ff Add F_DUPFD/F_DUPFD_CLOEXEC to fcntl shim 2020-02-17 22:24:33 -06:00
bors
329383acbd Auto merge of #1176 - RalfJung:readme, r=oli-obk
update Readme
2020-02-16 21:48:38 +00:00