<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/apache/apr.git/locks/netware/proc_mutex.c, branch trunk</title>
<subtitle>github.com: github.com: apache/apr.git. This may lag behind the Subversion repository, mirrored as libapr.git.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/'/>
<entry>
<title>Remove trailing whitespaces in *.c.</title>
<updated>2022-11-20T07:14:38+00:00</updated>
<author>
<name>Ivan Zhakov</name>
<email>ivan@apache.org</email>
</author>
<published>2022-11-20T07:14:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=4f9b76b6f2acc4030ce9ef164322514c5d0e761b'/>
<id>4f9b76b6f2acc4030ce9ef164322514c5d0e761b</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1905414 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1905414 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert 1839699, this contained unintended, additional noise. Re-correcting.</title>
<updated>2018-08-30T21:09:43+00:00</updated>
<author>
<name>William A. Rowe Jr</name>
<email>wrowe@apache.org</email>
</author>
<published>2018-08-30T21:09:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=6aa6b1c6e2c340e5bfe1e2b58951a3ccb03d77bd'/>
<id>6aa6b1c6e2c340e5bfe1e2b58951a3ccb03d77bd</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839700 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839700 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert 1839627, this macro does not result in a usable CC_FOR_BUILD</title>
<updated>2018-08-30T21:08:28+00:00</updated>
<author>
<name>William A. Rowe Jr</name>
<email>wrowe@apache.org</email>
</author>
<published>2018-08-30T21:08:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=232cd26685361833b19d0dbe5d567abe02e005a7'/>
<id>232cd26685361833b19d0dbe5d567abe02e005a7</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839699 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839699 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>locks: follow up to r1790488.</title>
<updated>2017-04-07T08:36:27+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2017-04-07T08:36:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=dcb111c6c2c7c8f7575eee1d07c1017eadf671e6'/>
<id>dcb111c6c2c7c8f7575eee1d07c1017eadf671e6</id>
<content type='text'>
Make it clear in the type that it's a relative/interval time.



git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1790521 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make it clear in the type that it's a relative/interval time.



git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1790521 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>locks: follow up to r1667900.</title>
<updated>2017-04-07T00:01:16+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2017-04-07T00:01:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=f7b5a5f20e3edfb8ef2f4077147acb0bf17b3fab'/>
<id>f7b5a5f20e3edfb8ef2f4077147acb0bf17b3fab</id>
<content type='text'>
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: https://svn.apache.org/repos/asf/apr/apr/trunk@1790488 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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: https://svn.apache.org/repos/asf/apr/apr/trunk@1790488 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>locks/netware: follow up to r1667962 and r1667900: fix typos (compile errors).</title>
<updated>2016-09-17T21:22:25+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2016-09-17T21:22:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=0b480688b4658e9e9abbd3cd3ad201a0f83a74c0'/>
<id>0b480688b4658e9e9abbd3cd3ad201a0f83a74c0</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1761279 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1761279 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>apr_os_proc_mutex_put_ex: Allow to specify whether the OS native</title>
<updated>2016-04-13T11:47:40+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2016-04-13T11:47:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=391dd40f45fbcac7eef01698c5aacbb426e5dd17'/>
<id>391dd40f45fbcac7eef01698c5aacbb426e5dd17</id>
<content type='text'>
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: https://svn.apache.org/repos/asf/apr/apr/trunk@1738925 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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: https://svn.apache.org/repos/asf/apr/apr/trunk@1738925 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>proc_mutex-netware: follow up to r1733775.</title>
<updated>2016-03-06T00:26:20+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2016-03-06T00:26:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=9780427eb07994732d66e5d064552c3d47b1d9a3'/>
<id>9780427eb07994732d66e5d064552c3d47b1d9a3</id>
<content type='text'>
Make apr_os_proc_mutex_{get,set}[_ex]() available by changing the
native apr_os_proc_mutex_t accessor type to a pointer.

git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1733776 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make apr_os_proc_mutex_{get,set}[_ex]() available by changing the
native apr_os_proc_mutex_t accessor type to a pointer.

git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1733776 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>apr_proc/global_mutex: Fix API regarding the native OS mutexes</title>
<updated>2016-03-06T00:19:51+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2016-03-06T00:19:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=4374120da1da5fefd2a1865868a698cc416f83c3'/>
<id>4374120da1da5fefd2a1865868a698cc416f83c3</id>
<content type='text'>
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...).
 


git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1733775 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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...).
 


git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1733775 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>locks: introduce apr_{thread,proc,global}_mutex_timedlock().</title>
<updated>2015-03-19T23:38:38+00:00</updated>
<author>
<name>Yann Ylavic</name>
<email>ylavic@apache.org</email>
</author>
<published>2015-03-19T23:38:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/apache/apr.git/commit/?id=90c4770899c4c45288e1cd1cb0277324a7d3bdbf'/>
<id>90c4770899c4c45288e1cd1cb0277324a7d3bdbf</id>
<content type='text'>
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.


git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667900 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.


git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667900 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
</feed>
