summaryrefslogtreecommitdiff
path: root/locks
Commit message (Collapse)AuthorAgeFilesLines
* Revert to 1.5.x apr_os_proc_mutex_get() behavior on Netware with an additionalwrowe2017-06-021-8/+4
| | | | | | | | | guard against dereferencing a NULL pointer. The assignment appears to be a noop but avoiding changes in this logic from 1.5.x -> 1.6.x is the primary goal. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797413 13f79535-47bb-0310-9956-ffa450edef68
* Typo caught by Yann, thanks!wrowe2017-06-011-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1797297 13f79535-47bb-0310-9956-ffa450edef68
* Partially revert 1738806 (r1733775, r1738791 from trunk), preservewrowe2017-06-014-17/+23
| | | | | | | | | 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
* Merge 1775071 from 1.5.x branch (r1775069 from trunk)wrowe2017-05-241-21/+21
| | | | | | | | | | 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
* Revert 1733684 (r930508, r1667900, r1667901, r1667903, r1667962, r1669077, ↵wrowe2017-05-2416-992/+77
| | | | | | | | | | | | 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
* Revert 1761280 (r1761279 from trunk), was;wrowe2017-05-233-4/+4
| | | | | | | | 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
* Revert 1775072 (r1775069 from trunk), wrowe2017-05-231-26/+27
| | | | | | | | | | | | 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
* Revert 1778111 (r1774973 from trunk); waswrowe2017-05-231-4/+0
| | | | | | | | | | 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
* Revert r1790105;wrowe2017-05-233-82/+69
| | | | | | | | | 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
* Revert 1790112 (r1790111 on trunk)wrowe2017-05-231-4/+0
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1795951 13f79535-47bb-0310-9956-ffa450edef68
* Revert 1790159, 1790156, 1790155wrowe2017-05-232-189/+59
| | | | | | | | | | | | 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
* Revert 1790301; waswrowe2017-05-231-4/+22
| | | | | | | | 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
* Revert 1790305;wrowe2017-05-231-1/+1
| | | | | | | | 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
* Revert 1790474 (r1790296, r1790302, r1790303, r1790304, r1790330, r1790331, ↵wrowe2017-05-233-438/+301
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Revert 1791719 (r1791718 from trunk), was;wrowe2017-05-231-9/+5
| | | | | | | | | | | 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
* Revert 1790490 (r1790488 from trunk), was;wrowe2017-05-2311-117/+184
| | | | | | | | | | | | | | 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
* Revert 1790527 (r1790521, r1790523 from trunk), was;wrowe2017-05-2311-16/+16
| | | | | | | | | | | | | | 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
* Revert 1790633 (r1790632 from trunk), was;wrowe2017-05-239-55/+106
| | | | | | | | | | 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
* Revert 1791729 (r1791728 from trunk): Was;wrowe2017-05-231-6/+5
| | | | | | | | | | | 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
* Revert r1791932wrowe2017-05-233-10/+0
| | | | | | | | | | | | | 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
* Revert r1794259 (r1792621, r1792622, r1792625 from trunk)wrowe2017-05-231-45/+38
| | | | | | | | | | | | | | | | | | | 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
* Merge r1792621, r1792622, r1792625 from trunk:ylavic2017-05-071-38/+45
| | | | | | | | | | | | | | | | | | 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
* Make timedlocks a configuration option.niq2017-04-193-0/+10
| | | | | | | | | 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
* Merge r1791728 from trunk:ylavic2017-04-171-5/+6
| | | | | | | | | | | 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
* Merge r1791718 from trunk:ylavic2017-04-171-5/+9
| | | | | | | | | | | 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
* Merge r1790632 from trunk:ylavic2017-04-079-106/+55
| | | | | | | | | | 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
* Merge r1790521, r1790523 from trunk:ylavic2017-04-0711-16/+16
| | | | | | | | | | | | | | 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
* Merge r1790488 from trunk:ylavic2017-04-0711-184/+117
| | | | | | | | | | | | | | | 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
* Merge r1790296, r1790302, r1790303, r1790304, r1790330, r1790331, r1790436, ↵ylavic2017-04-063-301/+438
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make clear this is a delta timeoutjim2017-04-051-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790305 13f79535-47bb-0310-9956-ffa450edef68
* semtimedop() takes a delta time, so accept what is given asjim2017-04-051-22/+4
| | | | | | the "time remaining" git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790301 13f79535-47bb-0310-9956-ffa450edef68
* format onltjim2017-04-041-115/+130
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790156 13f79535-47bb-0310-9956-ffa450edef68
* and the rest of the timedacquiresjim2017-04-042-22/+137
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790155 13f79535-47bb-0310-9956-ffa450edef68
* backport r1790111jim2017-04-041-0/+4
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790112 13f79535-47bb-0310-9956-ffa450edef68
* Add in our own pthread_mutex_timedlock impl for those OSs, likejim2017-04-043-69/+82
| | | | | | 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@1790105 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1789998 from trunk:ylavic2017-04-031-1/+1
| | | | | | | Follow up to r1733694: proc-pthreads have their own child_init() now. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1790046 13f79535-47bb-0310-9956-ffa450edef68
* locks: follow up to r1667900.rjung2017-01-101-0/+4
| | | | | | | | | | | Not all pthread implementations have mutex_timedlock(), like Solaris 8, so proc_mutex_proc_pthread_timedacquire() can return APR_ENOTIMPL. Backport of r1774973 from trunk. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1778111 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1775069 from trunk:ylavic2016-12-191-27/+26
| | | | | | | | | 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@1775072 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1761279 from trunk:ylavic2016-09-173-4/+4
| | | | | | | | | | locks/netware: follow up to r1667962 and r1667900: fix typos (compile errors). Reported by: Norm <normw gknw.net> Reviewed/backported by: ylavic git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1761280 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1755954 from trunk:ylavic2016-08-111-1/+1
| | | | | | | | | | | apr_os_proc_mutex_get_ex: win32: fix typo (s/mutex/pmutex/) leading to: locks\win32\proc_mutex.c(252): error C2065: 'mutex' : undeclared identifier Submitted by: Ivan Zhakov <ivan visualsvn.com> Reviewed by: ylavic git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1755956 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1738925 from trunk:ylavic2016-04-135-5/+42
| | | | | | | | | | apr_os_proc_mutex_put_ex: Allow to specify whether the OS native mutex should or not be cleaned up (destroyed) with the constructed APR mutex (given pool), and default to not for the simple _put() function. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1738927 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1733775, r1738791 from trunk:ylavic2016-04-126-124/+405
| | | | | | | | | | | | | | | | | | | | | | | | | | | | apr_proc/global_mutex: Fix API regarding the native OS mutexes accessors from/to available APR mechanisms, adding the new functions apr_os_proc_mutex_get_ex() and apr_os_proc_mutex_set_ex() which give control to the user over the selected mechanisms, including the missing POSIX semaphores (sem_t) on platforms supporting them. For POSIX sems, this moves the "sem_t *psem_interproc;" member from struct apr_proc_mutex_t to apr_os_proc_mutex_t (now complete) so that we can avoid members duplication between the two structs, and hence replace all the doublons in apr_os_proc_mutex_t with an apr_os_proc_mutex_t member, called "os", to be used for runtime. This first commit aims to be backportable to 1.6.x, thus does not address the Netware case which requires an incompatible change of the apr_proc_mutex_t to a pointer type (the implementation is here since very similar to other changes is this commit, but it is commented out for now, a simple follow up is coming with the type change for trunk only...). proc_mutex-unix: follow up to r1733775. Restore mmap-ed fd close stripped by above commit. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1738806 13f79535-47bb-0310-9956-ffa450edef68
* apr_proc_mutex-pthread: follow up to r1738793.ylavic2016-04-121-1/+2
| | | | | | | | | | | Fix munmap()ing size of the pthread_interproc mutex to match the mmap()ed one. Note: this was done in trunk by r1733775 (barely related and backported later), hence the additional change for *this* bugfix to be self contained. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1738796 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1733694, r1733706, r1733708 from trunk:ylavic2016-04-121-16/+54
| | | | | | | | | | | | | | | | | | apr_proc_mutex-pthread: Refcount shared mutexes usage to avoid destruction while still is use by some process(es). PR 49504. apr_proc_mutex-pthread: follow up to r1733694. Add missing refcount decrement when recovering the mutex from died owner, like in proc_mutex_proc_pthread_acquire() but this time for proc_mutex_proc_pthread_tryacquire() and proc_mutex_proc_pthread_timedacquire(). apr_proc_mutex-pthread: follow up to r1733694. Simplify #if/#else/#endif logic, no functional change. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1738793 13f79535-47bb-0310-9956-ffa450edef68
* Merge r930508, r1667900, r1667901, r1667903, r1667962, r1669077, r1671292, ↵ylavic2016-03-0516-78/+995
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r1732582 from trunk: OS/2: Add an implementation of condition variables, derived from the Win32 implementation. locks: introduce apr_{thread,proc,global}_mutex_timedlock(). For proc mutexes, the new mechanism APR_LOCK_DEFAULT_TIMED usable at creation time allows for the best mechanism to be elected (unixes: 1 to 3, or specific: 4 to 7): 1. PROC_PTHREAD if pthread_mutex_timedlock() and pthread_mutex_set_robust_np() are both available, 2. SYSV if semtimedop() is availale, 3. POSIXSEM if sem_timedwait() is available, 4. BeOS' acquire_sem_etc() if available, 5. NetWare falls back to apr_thread_mutex_timedlock() as for others functions, 6. OS2's DosRequestMutexSem(), 7. Windows' WaitForSingleObject(). Otherwise (like when fcntl and flock only are availble, if that's ever possible), APR_ENOTIMPL is returned. For thread mutexes, the new flag APR_THREAD_MUTEX_TIMED, usable at create() time still, allows to switch to an implementation using a condition variable and apr_thread_cond_timedwait() when if no native mechanism is available (eg. NetWare, pthreads but without pthread_mutex_timedlock() available). On windows, this initializes a WaitForSingleObject()able handle (Mutex) instead of the fastest (but not timeout-able) CRITICAL_SECTION used by default. All apr_{thread,proc,global}_mutex_timedlock() functions can take a relative or absolute time, thanks to the last (boolean) argument. Test suite updated accordingly. Follow up to r1667900: revert spurious change on test/abts_tests.h. Follow up to r1667900: fix comments. Follow up to r1667900: handle negative (infinite) timeout in mutex/cond timedlock/timedwait. locks: follow up to r1667900. In apr_global_mutex_timedlock(), we can avoid converting from relative to absolute time if thread locking is not needed. make internal function static to avoid a warning Follow up to r1667900: Avoid a circular reference (PR 59068). Submitted by: bjh, ylavic, ylavic, ylavic, ylavic, ylavic, trawick, ylavic Reviewed/backported by: ylavic git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1733684 13f79535-47bb-0310-9956-ffa450edef68
* Merge r767895 from trunk.ylavic2015-03-191-1/+2
| | | | | | | | | | | | apr_thread_cond_*wait() on BeOS: Fix broken logic. PR: 45800 Submitted by: Jochen Voss (no e-mail) Reviewed by: trawick Backported by: ylavic git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1667883 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1610854 from trunk:trawick2014-07-161-4/+18
| | | | | | | | | | | | | | | Resolve failures with the POSIX sem implementation of APR process mutexes (and thus global mutexes) in environments which receive signals. EINTR is now handled on the sem_* calls that are documented as exposing EINTR in the Linux, FreeBSD, and/or Solaris docs. There are a few other calls that haven't been updated: sem_unlink(), sem_post(), and sem_close(). git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1610993 13f79535-47bb-0310-9956-ffa450edef68
* Backport r741871 from trunk:sf2014-05-141-1/+1
| | | | | | | | | | Use macro for determinig function name This fixes an undefined reference to apr_proc_mutex_set_perms() and makes 1.6.x actually build. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1594696 13f79535-47bb-0310-9956-ffa450edef68
* Merge r741862, r741866 from trunk:jim2014-04-286-1/+88
| | | | | | | | | Add object perms set macros and implement them for shm and mutex Submitted by: mturk, rpluem Reviewed/backported by: jim git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x@1590617 13f79535-47bb-0310-9956-ffa450edef68
* Merge r1587063 from trunk:trawick2014-04-131-1/+6
| | | | | | | | | | | apr_os_proc_mutex_get() on Unix: Avoid segfault for cross- process pthread mutexes. Submitted by: Yann Ylavic <ylavic.dev gmail.com> Reviewed by: trawick git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.5.x@1587064 13f79535-47bb-0310-9956-ffa450edef68