Kevin P. Fleming
7b43316cbc
a little cleanup and simplification, and remove ON_FIRST_USE mode since nobody uses it
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 22:05:53 +00:00
Kevin P. Fleming
0a27d8bfe5
merge new_loader_completion branch, including (at least):
...
- restructured build tree and makefiles to eliminate recursion problems
- support for embedded modules
- support for static builds
- simpler cross-compilation support
- simpler module/loader interface (no exported symbols)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
Joshua Colp
ecb907e010
Use OSAtomicAdd instead of OSAtomicDecrement to decrement the value by 1.
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40303 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-17 21:14:03 +00:00
Russell Bryant
7718426316
fix the condition for including the header for osx atomics
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36421 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-30 16:02:05 +00:00
Russell Bryant
40bae2fba3
add support for atomic operations provided by mac osx
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36409 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-30 15:54:13 +00:00
Kevin P. Fleming
eddf363a0e
use atomic operations provided by the compiler if they are available (yay for gcc 4.1 users!)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-13 21:35:29 +00:00
Russell Bryant
40b3ce5c8f
suppress warnings when building with DEBUG_CHANNEL_LOCKS (issue #7330 , casper)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33550 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-11 21:42:13 +00:00
Kevin P. Fleming
8d74f0ebe6
restore AST_LIST_HEAD_INIT (with no users in the tree right now)
...
update ast_mutex_init to allow mutexes that are all zero bytes to be initialized (in the case of a dynamically-allocated structure containing a mutex)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@29727 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-23 17:04:07 +00:00
Luigi Rizzo
b91ce5a738
set correct type for lock initializers
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-11 20:21:11 +00:00
Olle Johansson
4a312a044d
- Fixes to ast_channel_lock functions
...
- New get_sip_pvt_byid function (not really used correctly yet...)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-16 12:57:15 +00:00
Olle Johansson
e75fa47099
More ast_channel_lock fixes
...
- Update lock.h with definitions of ast_channel_lock, ast_channel_unlock and ast_channel_trylock
- Convert some functions (but not all) in channel.c
- Fix some bugs in chan_sip.c
- Convert rest of chan_sip.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-15 15:07:39 +00:00
Olle Johansson
6b3367bf5c
New functions for locking a channel - these simplify debugging
...
when you have channel locking issues.
(Part of the SIP transfer patch, where I had a *lot* of
channel locking problems)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20264 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-15 08:07:50 +00:00
Luigi Rizzo
33a3a7375a
temporarily revert the way mutex are initialized on BSD systems.
...
This fixes the compilation on OS/X (the change exposed a wrong
assumption on mutex types on OS/X), but still leaves open the
bugs in initializing mutex on bsd systems, which you will see
reported as 'locking failures' on certain operations.
I need to investigate the issue further, but the best thing
i can do now is leave things as they have been for months.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14 13:54:53 +00:00
Kevin P. Fleming
371e0316f0
simplify macro usage
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 23:33:47 +00:00
Luigi Rizzo
2876a25505
add 'show threads' and 'show profile' commands.
...
These are momstly debugging tools for developers,
a bit documented in the header files (utils.h),
although more documentation is definitely necessary.
The performance impact is close to zero(*) so there is no
need to compile it conditionally.
(*) not completely true - thread destruction still needs
to search a list _but_ this can be easily optimized if we
end up with hundreds of active threads (in which case, though,
the problem is clearly elsewhere).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19544 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 20:40:46 +00:00
Luigi Rizzo
d20575d2af
fix various bugs in the DEBUG_THREADS code including:
...
- misspelled ast_mutex_logger() instead of __ast_mutex_logger()
- misplaced #define ast_mutex_init(pmutex)
- wrong arguments to __ast_mutex_logger() in one instance.
Clearly this code is too spaghetti!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 22:37:27 +00:00
Olle Johansson
adf8c8deda
- Change AST_INLINE_AP to AST_INLINE_API for non-386 systems :-)
...
- Doxygen changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16615 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-31 00:25:50 +00:00
Luigi Rizzo
a7ec530a64
initial implementation of support for native atomic ops.
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16601 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-30 23:26:22 +00:00
Olle Johansson
c6d1bfbb31
Doxygen doc updates
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-30 19:05:00 +00:00
Luigi Rizzo
1de8b16b1e
remove AST_MUTEX_DEFINE_EXPORTED, which now has no more clients.
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-30 17:11:49 +00:00
Luigi Rizzo
6d2fbc0b90
document why there are so many versions of the mutex functions,
...
with their pros and cons, and that we should converge to a single method.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-30 16:09:23 +00:00
Kevin P. Fleming
322f53d8b8
don't treat timeouts as errors in ast_cond_timedwait
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@14593 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-24 00:03:21 +00:00
Russell Bryant
c93149c635
fix a little typo
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9704 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-12 17:07:45 +00:00
Kevin P. Fleming
2c65582b66
remove extraneous svn:executable properties
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Kevin P. Fleming
b3ffb91539
issue #5668 , modified to compile on non-Cygwin platforms :-)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7061 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-11 00:21:42 +00:00
Kevin P. Fleming
2251dd3723
issue #5570
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7022 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-08 03:54:04 +00:00
Kevin P. Fleming
7ffb604a2f
issue #4678
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6936 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-01 21:53:30 +00:00
Kevin P. Fleming
69194e2bc2
fix non-DEBUG_THREADS builds with new cond wrappers and lock header reorganization
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6879 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-28 16:59:48 +00:00
Kevin P. Fleming
a0cb07e467
add 'ast_cond_t' type for pthread condition variables, and appropriate API wrappers
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6877 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-28 16:35:43 +00:00
Russell Bryant
3453e3efa5
Doxygen documentation update from oej (issue #5505 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24 20:12:06 +00:00
Mark Spencer
d95ad5b4d8
Make lock logging reentrant when DEBUG_THREADS enabled
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6555 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-09 05:35:14 +00:00
Kevin P. Fleming
fc91dd1035
eliminate spurious warnings
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6478 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-01 00:05:47 +00:00
Kevin P. Fleming
9614adc056
make DEBUG_THREADS have more visible logging
...
make DEBUG_THREADS able to catch locks being unlocked by threads that did not own them
add proper wrappers for pthread_cond_wait() and pthread_cond_timedwait() for DEBUG_THREADS mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-31 02:43:44 +00:00
Kevin P. Fleming
1632d52795
major header file cleanup: license, copyrights, descriptions, markers, etc.
...
remove deprecated config_old.c/config_old.h
remove unused cvsid.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-30 18:32:10 +00:00
Kevin P. Fleming
957eed7682
eliminate compiler warnings when DEBUG_THREADS is enabled
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6313 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-09 15:37:33 +00:00
Kevin P. Fleming
2c0f42361e
correct comment
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6225 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-26 21:49:07 +00:00
Mark Spencer
d69b5c74e5
Fix debugging to not print warnings
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-23 01:17:00 +00:00
Mark Spencer
89131204fd
Minor deadlock detect fix (bug #3531 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4986 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-08 18:48:01 +00:00
Russell Bryant
0c30452423
update copyright headers for 2005
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 07:06:25 +00:00
Mark Spencer
9d40b8ee80
Merge slimey's Solaris compatibility (with small mods) (bug #2740 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4446 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-14 23:36:30 +00:00
Mark Spencer
0a9fd1435b
Fix initialization tiddly bit
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4039 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-20 12:39:22 +00:00
James Golovich
c7c92a9f15
Fix typo and missing format string in a fprintf in lock.h
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4038 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-20 05:45:09 +00:00
Mark Spencer
12e2fe4d94
Thread fixes, vm fix (bug #2665 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4030 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-17 22:13:05 +00:00
Mark Spencer
32126398ef
Locking updates for debug mode, fix SIP MWI (bug #2582 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3918 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-06 04:30:16 +00:00
Mark Spencer
7acee329e1
Merge BSD stack size work (bug #2067 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-08-08 17:15:02 +00:00
James Golovich
024f486810
Code formatting cleanups in utils.c and include/asterisk/lock.h
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-22 19:53:36 +00:00
Mark Spencer
5546e32355
Merge major BSD mutex and symbol conflict patches (bug #1816 ) (link patch still pending)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-22 17:42:14 +00:00
Mark Spencer
de57be6bbd
Lock fixes for FreeBSD (bug #1810 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3179 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-09 13:49:42 +00:00
Mark Spencer
727abcdec7
Merge FreeBSD locking fixes (bug #1411 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-09 01:45:08 +00:00
Mark Spencer
776497fb6b
Fix potential segfault, add support for MacOS X locks
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-05-24 15:28:36 +00:00