| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Approved by: re (kib)
Notes:
svn path=/releng/7.1/; revision=186369
|
| |
|
|
|
|
|
| |
Correctly return result in pthread_condattr_getpshared.
Notes:
svn path=/stable/7/; revision=181318
|
| |
|
|
|
|
|
| |
forward ABI compatibility for fcntl to the thread libraries.
Notes:
svn path=/stable/7/; revision=179608
|
| |
|
|
|
|
|
| |
fix return value for function pthread_mutexattr_settype().
Notes:
svn path=/stable/7/; revision=178394
|
| |
|
|
|
|
|
| |
Preserve and restore errno.
Notes:
svn path=/stable/7/; revision=178137
|
| |
|
|
|
|
|
| |
retire type umtx_t.
Notes:
svn path=/stable/7/; revision=178136
|
| |
|
|
|
|
|
|
|
|
| |
- add _umtx_op_err function to improve stability because of errno
changed by application signal handler code.
- use kernel based userland rwlock to implement pthread_rwlock,
improve performance in most cases.
Notes:
svn path=/stable/7/; revision=178135
|
| |
|
|
|
|
|
| |
Unblock SIGCANCEL for thread created by cleanup handler.
Notes:
svn path=/stable/7/; revision=178090
|
| |
|
|
|
|
|
| |
> Use macro THR_CLEANUP_PUSH/POP.
Notes:
svn path=/stable/7/; revision=177515
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Avoid re-zeroing memory in calloc() when possible.
* Use pthread mutexes where possible instead of libc "spinlocks", and
actually spin some during contention before blocking.
* Implement dynamic load balancing of thread-->arena mapping.
* Avoid floating point math in order to avoid increased context switch
overhead for applications that otherwise would not use floating point
math.
* Restructure how sbrk() and mmap() are used to acquire memory mappings.
This provides a way to force malloc to only use sbrk(), which can be
useful in the context of resource limits.
* Reduce the number of mmap() calls typically necessary when allocating
a chunk.
* Track dirty unused pages so that they can be purged if they exceed a
threshold.
* Try to realloc() large objects in place.
* Manage page runs with trees instead of chunk maps, which allows
logarithmic-time run allocation.
Notes:
svn path=/stable/7/; revision=176922
|
| |
|
|
|
|
|
|
|
|
| |
> Enclose all code for macro ENQUEUE_MUTEX in do while statement, and
> add missing brackets.
Approved by: re (kensmith)
Notes:
svn path=/stable/7/; revision=174572
|
| |
|
|
|
|
|
|
|
| |
support for spinning/yielding loops.
Approved by: re@ (kensmith)
Notes:
svn path=/stable/7/; revision=173593
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
In _pthread_key_create() ensure that libthr is initialized. This
fixes a NULL-dereference of curthread when libstdc+ initializes
the exception handling globals on archs we can't use GNU TLS due
to lack of support in binutils 2.15 (i.e. arm and sparc64), yet,
thus making threaded C++ programs compiled with GCC 4.2.1 work
again on these archs.
Approved by: re (kensmith)
Notes:
svn path=/stable/7/; revision=173508
|
| |
|
|
|
|
|
| |
Approved by: re (bmah)
Notes:
svn path=/head/; revision=171763
|
| |
|
|
| |
Notes:
svn path=/head/; revision=169413
|
| |
|
|
|
|
|
|
|
|
| |
THR_THREAD_LOCK and THR_THREAD_UNLOCK instead, this should fix wrong
lock level problem.
Bug reported by: ed dot maste at gmail dot com
Notes:
svn path=/head/; revision=168382
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165967
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165791
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165790
|
| |
|
|
|
|
|
| |
mutex in right order sorted by priority ceiling.
Notes:
svn path=/head/; revision=165789
|
| |
|
|
|
|
|
| |
mutexes.
Notes:
svn path=/head/; revision=165371
|
| |
|
|
|
|
|
| |
it as a default spin cycle count.
Notes:
svn path=/head/; revision=165370
|
| |
|
|
|
|
|
|
| |
- Rename _thr_smp_cpus to boolean variable _thr_is_smp.
- Define CPU_SPINWAIT macro for each arch, only X86 supports it.
Notes:
svn path=/head/; revision=165241
|
| |
|
|
|
|
|
|
| |
operation, if it is failed, we call syscall directly, this saves
one atomic operation per lock contention.
Notes:
svn path=/head/; revision=165206
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165115
|
| |
|
|
|
|
|
|
|
|
| |
_thr_ucond_broadcast, clear condition variable pointer in cancellation
info after returing from _thr_ucond_wait, since kernel has already
dropped the internal lock, so we don't need to unlock it in cancellation
handler again.
Notes:
svn path=/head/; revision=165110
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164929
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164927
|
| |
|
|
|
|
|
| |
alarm code.
Notes:
svn path=/head/; revision=164905
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164903
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164902
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164896
|
| |
|
|
|
|
|
| |
by compiler.
Notes:
svn path=/head/; revision=164878
|
| |
|
|
|
|
|
| |
condition variable.
Notes:
svn path=/head/; revision=164877
|
| |
|
|
|
|
|
|
|
|
|
| |
is also returned by pthread_detach() if a thread was already
detached, the error code was already documented:
> [EINVAL] The implementation has detected that the value speci-
> fied by thread does not refer to a joinable thread.
Notes:
svn path=/head/; revision=164715
|
| |
|
|
|
|
|
| |
reduce overheads of cancellation points.
Notes:
svn path=/head/; revision=164583
|
| |
|
|
| |
Notes:
svn path=/head/; revision=164178
|
| |
|
|
|
|
|
|
| |
only has one thread, setting the flag can cause the thread to be
suspended and no another thread will resume it.
Notes:
svn path=/head/; revision=163346
|
| |
|
|
|
|
|
|
|
| |
o Eliminate unused parameter for some functions.
o Convert type of first parameter to void * for _thr_umtx_wait
and _thr_umtx_wake.
Notes:
svn path=/head/; revision=163334
|
| |
|
|
| |
Notes:
svn path=/head/; revision=163307
|
| |
|
|
| |
Notes:
svn path=/head/; revision=162499
|
| |
|
|
| |
Notes:
svn path=/head/; revision=162143
|
| |
|
|
|
|
|
| |
real-time if we want, no functionality is changed.
Notes:
svn path=/head/; revision=162061
|
| |
|
|
| |
Notes:
svn path=/head/; revision=162037
|
| |
|
|
| |
Notes:
svn path=/head/; revision=162036
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161711
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161695
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161682
|
| |
|
|
|
|
|
|
|
| |
into pthread structure to keep track of locked PTHREAD_PRIO_PROTECT mutex,
no real mutex code is changed, the mutex locking and unlocking code should
has same performance as before.
Notes:
svn path=/head/; revision=161681
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161680
|