| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797297 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
apr_os_proc_mutex_get_ex|_put_ex, but fall back to the supported
APR_LOCK_DEFAULT
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797267 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797056 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797053 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
Patch by Jacob Champion
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797051 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
proc_mutex_pthread: simplify (shorten) methods' names by removing
the second/double proc_ (consistently with other mechanisms).
Resolves earlier TODO from r1795957
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1796073 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
| |
r1671292, r1732582 from trunk), was;
locks: introduce apr_{thread,proc,global}_mutex_timedlock().
(and many many more commit log entries, see r1733684 for details)
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1796072 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
Follow up to r1667900: don't fail test{proc,global}mutex if
APR_LOCK_DEFAULT_TIMED is not implemented (e.g. MacOS).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1796071 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pthread_mutex_timedlock is broken on Solaris 10.
It can block without timeout in case of EDEADLK.
On Solaris 8 it does not exist, on Solaris 11
it is fixed. For Solaris 10 no patch is available.
Silence compiler warning "defined but not used"
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1796066 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
locks/netware: follow up to r1667962 and r1667900: fix typos (compile errors).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795959 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
| |
CRITICAL TODO: once unwound, apply r1775071 for the same fix sans timedlock
Was;
proc_mutex_pthread: simplify (shorten) methods' names by removing
the second/double proc_ (consistently with other mechanisms).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795957 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
Not all pthread implementations have mutex_timedlock(),
like Solaris 8, so proc_mutex_proc_pthread_timedacquire()
can return APR_ENOTIMPL.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795956 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
Add in our own pthread_mutex_timedlock impl for those OSs, like
osx/macos that don't have it. Be a bit more generous in the test
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795952 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795951 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
| |
userland change... the timedacquire stuff
format onlt
and the rest of the timedacquires
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795949 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
semtimedop() takes a delta time, so accept what is given as
the "time remaining"
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795947 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
Make clear this is a delta timeout
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795946 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r1790436, r1790439, r1790444, r1790446 from trunk), was:
Follow up to r1667900: semtimedop() should be passed a relative timeout rather
then absolute.
semtimedop() takes a delta time, so accept what is given as the "time remaining"
rr1790301
Use our "portable" versions
Make clear this is a delta timeout
locks: when pthread_mutex_timedlock() isn't available, fall back to an
implementation based on pthread_cond_timedwait() when possible.
Avoid a compiler warning by using system's errno.
locks: follow up to r1790330.
When no native timedlock is available, fall back to a common/generic spin sleep
proc_mutex_spinsleep_timedacquire() based on the configured APR_USE_*_SERIALIZE
trylock.
Otherwise, choose the best timedlock mechanism in the following order:
1. PTHREAD if HAVE_PTHREAD_MUTEX_ROBUST && (HAVE_PTHREAD_MUTEX_TIMEDLOCK
|| HAVE_PTHREAD_CONDATTR_SETPSHARED)
2. SYSV if HAVE_SEMTIMEDOP
3. POSIX if HAVE_SEM_TIMEDWAIT
4. The one of APR_USE_*_SERIALIZE, hence possibly non-robust and/or spinning
with the same robustness as the underlying apr_proc_mutex_trylock() call.
apr_proc_mutex_timedlock() won't return ENOTIMPL anymore.
locks: follow up to r1790330 and r1790436.
unix/misc.c is not needed anymore since we use apr_proc_mutex_trylock()
directly.
locks: follow up to r1790330.
No functional change, more helpers/macros to help identify struct
proc_pthread_mutex_t members.
locks: follow up to r1790330.
Don't try to access proc_pthread_mutex_t's condvar if the mutex was _put[_ex]()
and not _create()d, this is a real pthread_mutex_t.
Submitted by: ylavic, jim, jim, jim, ylavic, ylavic, ylavic, ylavic, ylavic, ylavic
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795945 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790446.
Since proc_pthread_mutex_cond_locked() macro is also used as an lvalue, don't
define it as a conditional and put the condition where needed in the code.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795942 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1667900.
Axe the 'absolute' argument of apr_{thread,proc,global}_mutex_timedlock()
which was confusing, hence 'timeout' is always relative now.
It still makes sense (to me) to handle a negative timeout as INFINITE, a nul
one as IMMEDIATE, and a positive one as an upper bound timeout (like most if
not all of the underlying system calls...).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795940 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790488.
Make it clear in the type that it's a relative/interval time.
locks: follow up to r1790488 and r1790521: likewise for the
apr_proc_mutex_unix_lock_methods_t's timedacquired method.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795939 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790488, r1790521 and r1790523: likewise for the tests.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795938 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
apr_{thread,proc,global}_timedlock() with negative timeout is now equivalent
to apr_{thread,proc,global}_trylock(), i.e. immediate attempt to acquire the
lock (but returning APR_TIMEUP if busy).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795937 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790436.
Fix proc_mutex_pthread_acquire_ex() for the APR_USE_PROC_PTHREAD_MUTEX_COND
case which shouldn't use undefined pthread_cond_timedwait().
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795935 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Was:
Make timedlocks a configuration option.
After first Mac then Solaris biting us, timedlocks look high-risk,
so a config option and a corresponding rlease note offer a workaround
to any users who get bitten.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795934 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: unix: provide a macro helper for a pattern used several times.
No functional change.
locks: unix: timedlock: better handling of spurious wakeups that may be
inherent to some native/OS condvar implementation.
locks: unix: follow up to r1792622.
Indent block previously preserved (for easier review), no functional change.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795933 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
features, revert 'default-disabled' change from r1792560,
and build timedlocks where resolved as available by default.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795828 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: unix: provide a macro helper for a pattern used several times.
No functional change.
locks: unix: timedlock: better handling of spurious wakeups that may be
inherent to some native/OS condvar implementation.
locks: unix: follow up to r1792622.
Indent block previously preserved (for easier review), no functional change.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1794259 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1792965 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
Backport of r1792963 from trunk.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1792964 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
It can block without timeout in case of EDEADLK.
On Solaris 8 it does not exist, on Solaris 11
it is fixed. For Solaris 10 no patch is available.
Backport of r1792961 from trunk.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1792962 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1792754 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1792560 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
After first Mac then Solaris biting us, timedlocks look high-risk,
so a config option and a corresponding rlease note offer a workaround
to any users who get bitten.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791932 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790436.
Fix proc_mutex_pthread_acquire_ex() for the APR_USE_PROC_PTHREAD_MUTEX_COND
case which shouldn't use undefined pthread_cond_timedwait().
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791729 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790446.
Since proc_pthread_mutex_cond_locked() macro is also used as an lvalue, don't
define it as a conditional and put the condition where needed in the code.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791719 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
http://git.savannah.gnu.org/cgit/config.git.
Backport of r1791598 from trunk.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791599 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791512 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791510 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
moved in the openssl source and may be needed.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791191 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791030 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1791005 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
apr_{thread,proc,global}_timedlock() with negative timeout is now equivalent
to apr_{thread,proc,global}_trylock(), i.e. immediate attempt to acquire the
lock (but returning APR_TIMEUP if busy).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790633 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790488, r1790521 and r1790523: likewise for the tests.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790570 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1790488.
Make it clear in the type that it's a relative/interval time.
locks: follow up to r1790488 and r1790521: likewise for the
apr_proc_mutex_unix_lock_methods_t's timedacquired method.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790527 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
locks: follow up to r1667900.
Axe the 'absolute' argument of apr_{thread,proc,global}_mutex_timedlock()
which was confusing, hence 'timeout' is always relative now.
It still makes sense (to me) to handle a negative timeout as INFINITE, a nul
one as IMMEDIATE, and a positive one as an upper bound timeout (like most if
not all of the underlying system calls...).
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790490 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r1790439, r1790444, r1790446 from trunk:
Follow up to r1667900: semtimedop() should be passed a relative timeout rather
then absolute.
semtimedop() takes a delta time, so accept what is given as the "time remaining"
rr1790301
Use our "portable" versions
Make clear this is a delta timeout
locks: when pthread_mutex_timedlock() isn't available, fall back to an
implementation based on pthread_cond_timedwait() when possible.
Avoid a compiler warning by using system's errno.
locks: follow up to r1790330.
When no native timedlock is available, fall back to a common/generic spin sleep
proc_mutex_spinsleep_timedacquire() based on the configured APR_USE_*_SERIALIZE
trylock.
Otherwise, choose the best timedlock mechanism in the following order:
1. PTHREAD if HAVE_PTHREAD_MUTEX_ROBUST && (HAVE_PTHREAD_MUTEX_TIMEDLOCK
|| HAVE_PTHREAD_CONDATTR_SETPSHARED)
2. SYSV if HAVE_SEMTIMEDOP
3. POSIX if HAVE_SEM_TIMEDWAIT
4. The one of APR_USE_*_SERIALIZE, hence possibly non-robust and/or spinning
with the same robustness as the underlying apr_proc_mutex_trylock() call.
apr_proc_mutex_timedlock() won't return ENOTIMPL anymore.
locks: follow up to r1790330 and r1790436.
unix/misc.c is not needed anymore since we use apr_proc_mutex_trylock()
directly.
locks: follow up to r1790330.
No functional change, more helpers/macros to help identify struct
proc_pthread_mutex_t members.
locks: follow up to r1790330.
Don't try to access proc_pthread_mutex_t's condvar if the mutex was _put[_ex]()
and not _create()d, this is a real pthread_mutex_t.
Submitted by: ylavic, jim, jim, jim, ylavic, ylavic, ylavic, ylavic, ylavic, ylavic
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790474 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790305 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
the "time remaining"
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790301 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790207 13f79535-47bb-0310-9956-ffa450edef68
|