summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibPthread/pthread.h
AgeCommit message (Collapse)Author
2021-07-05LibC+LibPthread: Add PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NPAndreas Kling
This is a common but non-standard way of initializing a pthread_mutex_t in recursive mode.
2021-05-10LibC: Partially implement pthread_setcancel{state,type}()Gunnar Beutner
With those partially implemented I can start to clone the SerenityOS git repository via HTTPS. The download still fails half-way through because SSL_read returns an error for reasons I haven't investigated yet.
2021-05-08LibPthread: Add implementation for pthread_mutexattr_gettypeGunnar Beutner
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-21LibPthread: Add non functional pthread_attr_[set|get]scope stubsBrian Gianforcaro
Standard: https://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_attr_getscope.html Needed for https://fio.readthedocs.io
2021-04-20LibPthread: Add stubs for pthread_spin_* functionsGunnar Beutner
The stress-ng port depends on these now that it detects we have thread support.
2021-04-20LibC+LibPthread: Implement function forwarding for libpthreadGunnar Beutner
GCC will insert various calls to pthread functions when compiling C++ code with static initializers, even when the user doesn't link their program against libpthread explicitly. This is used to make static initializers thread-safe, e.g. when building a library that does not itself use thread functionality and thus does not link against libpthread - but is intended to be used with other code that does use libpthread explicitly. This makes these symbols available in libc.
2021-04-18LibC+LibPthread: Make sure TLS keys are destroyed after everything elseGunnar Beutner
This ensures that __thread variables can be used when global destructors are being invoked.
2021-02-15LibC+LibPthread: Implement pthread_atfork()AnotherTest
This required a bit of rearchitecture, as pthread_atfork() required a mutex, and duplicating a mutex impl for it was silly. As such, this patch moves some standalone bits of pthread into LibC and uses those to implement atfork(). It should be noted that for programs that don't use atfork(), this mechanism only costs two atomic loads (as opposed to the normal mutex lock+unlock) :^)
2021-02-15LibPthread: Stub out `pthread_atfork()`AnotherTest
2021-02-15LibC+LibPthread: Stub out pthread_rwlock_* functionsAnotherTest
2021-01-12LibPthread: Add pthread_equal()Andreas Kling
2021-01-12LibPthread: Stub pthread_setcancelstate() and pthread_setcanceltype()Andreas Kling
2021-01-12Libraries: Move to Userland/Libraries/Andreas Kling