| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2022-05-11 | to_timespec could be unused by some targets | Sébastien Marie | -0/+1 | |
| 2022-05-11 | avoid using both Some() and ? on linux/android/freebsd code | Sébastien Marie | -1/+1 | |
| 2022-05-11 | openbsd: convert futex timeout managment to Timespec usage | Sébastien Marie | -9/+7 | |
| 2022-05-09 | Use Rust 2021 prelude in std itself. | Mara Bos | -13/+0 | |
| 2022-05-06 | Share more unix SystemTime code | Josh Stone | -101/+57 | |
| 2022-05-06 | Use statx's 64-bit times on 32-bit linux-gnu | Josh Stone | -38/+79 | |
| 2022-05-06 | Use __clock_gettime64 on 32-bit linux-gnu | Josh Stone | -0/+27 | |
| 2022-05-06 | unix: always use 64-bit Timespec | Josh Stone | -67/+65 | |
| 2022-05-03 | Round timeouts up to infinite in futex_wait on DragonFlyBSD. | Mara Bos | -9/+8 | |
| 2022-05-03 | Add #[cfg] in cfg_if for linux in unix/futex. | Mara Bos | -3/+5 | |
| 2022-05-03 | Don't use futexes on netbsd. | Mara Bos | -43/+5 | |
| The latest NetBSD release doesn't include the futex syscall yet. | ||||
| 2022-04-29 | Disable pthread thread parker on futex platforms. | Mara Bos | -1/+5 | |
| 2022-04-29 | Always return false in futex_wake on {Free,DragonFly}BSD. | Mara Bos | -16/+13 | |
| 2022-04-29 | Use futex-based locks and thread parker on FreeBSD. | Mara Bos | -4/+59 | |
| 2022-04-29 | Use futex-based locks and thread parker on DragonFlyBSD. | Mara Bos | -1/+43 | |
| 2022-04-29 | Use futex-based locks and thread parker on NetBSD. | Mara Bos | -24/+52 | |
| 2022-04-29 | Use futex-based locks and thread parker on OpenBSD. | Mara Bos | -1/+52 | |
| 2022-04-28 | Auto merge of #96393 - joboet:pthread_parker, r=thomcc | bors | -2/+268 | |
| std: directly use pthread in UNIX parker implementation `Mutex` and `Condvar` are being replaced by more efficient implementations, which need thread parking themselves (see #93740). Therefore we should use the `pthread` synchronization primitives directly. Also, we can avoid allocating the mutex and condition variable because the `Parker` struct is being placed in an `Arc` anyways. This basically is just a copy of the current `Mutex` and `Condvar` code, which will however be removed (again, see #93740). An alternative implementation could be to use dedicated private `OsMutex` and `OsCondvar` types, but all the other platforms supported by std actually have their own thread parking primitives. I used `Pin` to guarantee a stable address for the `Parker` struct, while the current implementation does not, rather using extra unsafe declaration. Since the thread struct is shared anyways, I assumed this would not add too much clutter while being clearer. | ||||
| 2022-04-28 | std: simplify UNIX parker timeouts | joboet | -59/+21 | |
| 2022-04-25 | Remove references to git.io | Eric Huss | -1/+2 | |
| 2022-04-25 | std: directly use pthread in UNIX parker implementation | joboet | -0/+304 | |
| Mutex and Condvar are being replaced by more efficient implementations, which need thread parking themselves (see #93740). Therefore use the pthread synchronization primitives directly. Also, avoid allocating because the Parker struct is being placed in an Arc anyways. | ||||
| 2022-04-24 | Auto merge of #94609 - esp-rs:esp-idf-stat-type-fixes, r=Mark-Simulacrum | bors | -3/+18 | |
| espidf: fix stat Marking as draft as currently dependant on [a libc fix](https://github.com/rust-lang/libc/pull/2708) and release. | ||||
| 2022-04-21 | Rollup merge of #96193 - djkoloski:fuchsia_current_exe, r=tmandry | Dylan DPC | -1/+21 | |
| [fuchsia] Add implementation for `current_exe` This implementation returns a best attempt at the current exe path. On fuchsia, fdio will always use `argv[0]` as the process name and if it is not set then an error will be returned. Because this is not guaranteed to be the case, this implementation returns an error if `argv` does not contain any elements. | ||||
| 2022-04-20 | Rollup merge of #96234 - goffrie:eloop, r=thomcc | Dylan DPC | -1/+2 | |
| remove_dir_all_recursive: treat ELOOP the same as ENOTDIR On older Linux kernels (I tested on 4.4, corresponding to Ubuntu 16.04), opening a symlink using `O_DIRECTORY | O_NOFOLLOW` returns `ELOOP` instead of `ENOTDIR`. We should handle it the same, since a symlink is still not a directory and needs to be `unlink`ed. | ||||
| 2022-04-20 | Rollup merge of #96167 - CAD97:weak-dlsym-less-ptr-crime, r=thomcc | Dylan DPC | -17/+15 | |
| Replace sys/unix/weak AtomicUsize with AtomicPtr Should fix #96163. Can't easily test on Windows though... | ||||
| 2022-04-20 | remove_dir_all_recursive: treat ELOOP the same as ENOTDIR | Geoffry Song | -1/+2 | |
| 2022-04-19 | [fuchsia] Add implementation for `current_exe` | David Koloski | -1/+21 | |
| This implementation returns a best attempt at the current exe path. On fuchsia, fdio will always use `argv[0]` as the process name and if it is not set then an error will be returned. Because this is not guaranteed to be the case, this implementation returns an error if `argv` does not contain any elements. | ||||
| 2022-04-19 | espidf: fix stat | Scott Mabin | -3/+18 | |
| * corect type usage with new type definitions in libc | ||||
| 2022-04-19 | Use futex locks on emscripten. | Mara Bos | -0/+1 | |
| 2022-04-19 | Make std::sys::unix::futex consistent on emscripten. | Mara Bos | -22/+25 | |
| 2022-04-18 | Auto merge of #96042 - m-ou-se:one-reentrant-mutex, r=Amanieu | bors | -146/+2 | |
| Use a single ReentrantMutex implementation on all platforms. This replaces all platform specific ReentrantMutex implementations by the one I added in #95727 for Linux, since that one does not depend on any platform specific details. r? `@Amanieu` | ||||
| 2022-04-17 | Replace sys/unix/weak AtomicUsize with AtomicPtr | CAD97 | -17/+15 | |
| 2022-04-17 | Auto merge of #93530 - anonion0:pthread_sigmask_fix, r=JohnTitor | bors | -4/+5 | |
| fix error handling for pthread_sigmask(3) Errors from `pthread_sigmask(3)` were handled using `cvt()`, which expects a return value of `-1` on error and uses `errno`. However, `pthread_sigmask(3)` returns `0` on success and an error number otherwise. Fix it by replacing `cvt()` with `cvt_nz()`. | ||||
| 2022-04-17 | move import to fix warning with emscripten target | Ralf Sager | -1/+2 | |
| 2022-04-16 | Use a single ReentrantMutex implementation on all platforms. | Mara Bos | -146/+2 | |
| 2022-04-15 | Rollup merge of #96040 - m-ou-se:futex-u32, r=Amanieu | Dylan DPC | -42/+40 | |
| Use u32 instead of i32 for futexes. This changes futexes from i32 to u32. The [Linux man page](https://man7.org/linux/man-pages/man2/futex.2.html) uses `uint32_t` for them, so I'm not sure why I used i32 for them. Maybe because I first used them for thread parkers, where I used -1, 0, and 1 as the states. (Wasm's `memory.atomic.wait32` does use `i32`, because wasm doesn't support `u32`.) It doesn't matter much, but using the unsigned type probably results in fewer surprises when shifting bits around or using comparison operators. r? ```@Amanieu``` | ||||
| 2022-04-14 | library: Remove definitions and reexports of `strlen` from libstd | Vadim Petrochenkov | -1/+0 | |
| 2022-04-14 | Use u32 instead of i32 for futexes. | Mara Bos | -42/+40 | |
| 2022-04-12 | Allow cvt_nz to be unused on some platforms. | Mara Bos | -0/+1 | |
| 2022-04-12 | Add debug asserts to futex ReentrantMutex impl. | Mara Bos | -0/+2 | |
| 2022-04-12 | Initialize thread local with const{}. | Mara Bos | -1/+1 | |
| 2022-04-12 | Move current_thread_unique_ptr to the only module that uses it. | Mara Bos | -1/+9 | |
| 2022-04-12 | Add futex-based ReentrantMutex on Linux. | Mara Bos | -6/+88 | |
| 2022-04-11 | Use is_ or has_ prefix for pure `-> bool` functions. | Mara Bos | -23/+25 | |
| 2022-04-11 | Use compare_exchange_weak in futex rwlock implementation. | Mara Bos | -4/+11 | |
| 2022-04-11 | Add comments to futex rwlock implementation. | Mara Bos | -1/+12 | |
| 2022-04-11 | Add doc comments to futex operations. | Mara Bos | -0/+10 | |
| 2022-04-08 | Fix typo in futex rwlock. | Mara Bos | -1/+1 | |
| Co-authored-by: Amanieu d'Antras <amanieu@gmail.com> | ||||
| 2022-04-08 | Add futex-based RwLock on Linux. | Mara Bos | -2/+295 | |
| 2022-04-07 | Return status from futex_wake(). | Mara Bos | -6/+4 | |
