Age | Commit message (Collapse) | Author |
|
After giving it some consideration, there's no real
use for zombie threads. Listeners can't really use the
current number of zombie threads as a way of gauging activity,
zombifying threads is just an extra step before they die that
really serves no purpose, and since there's no way to re-animate
zombies, the operation does not need to be around.
I also fixed up some miscellaneous compilation errors that
were lingering from some past revisions.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377211 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
Since threadpool shutdown is very strictly controlled,
there is no need to be so precise with reference counts
in queued operations. Since the threadpool shuts down its
own control taskprocessor before doing anything else destructive,
it can be guaranteed that all queued tasks will have a valid
pointer to the pool. This meant that some destructor functions
for helper structs could be removed entirely.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377210 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377196 | russell | 2012-12-04 07:01:23 -0600 (Tue, 04 Dec 2012) | 7 lines
Add libuuid to install_prereq for Fedora.
I ran this script and my build failed. pjproject requires this.
........
Merged revisions 377195 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377201 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377168 | rmudgett | 2012-12-03 17:00:08 -0600 (Mon, 03 Dec 2012) | 21 lines
Cleanup ast_run_atexits() atexits list.
* Convert atexits list to a mutex instead of a rd/wr lock. The lock is
only write locked.
* Move CLI verbose Asterisk ending message to where AMI message is output
in really_quit() to avoid further surprises about using stuff already
shutdown.
(issue ASTERISK-20649)
Reported by: Corey Farrell
........
Merged revisions 377165 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377166 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377167 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377138 | rmudgett | 2012-12-03 14:46:11 -0600 (Mon, 03 Dec 2012) | 23 lines
Cleanup core main on exit.
* Cleanup time zones on exit.
* Make exit clean/unclean report consistent for AMI and CLI in
really_quit().
(issue ASTERISK-20649)
Reported by: Corey Farrell
Patches:
core-cleanup-1_8-10.patch (license #5909) patch uploaded by Corey Farrell
core-cleanup-11-trunk.patch (license #5909) patch uploaded by Corey Farrell
Modified
........
Merged revisions 377135 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377136 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377137 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377145 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377107 | rmudgett | 2012-12-03 13:33:06 -0600 (Mon, 03 Dec 2012) | 16 lines
Cleanup config cache on exit.
(issue ASTERISK-20649)
Reported by: Corey Farrell
Patches:
config-cleanup-all.patch (license #5909) patch uploaded by Corey Farrell
........
Merged revisions 377104 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377105 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377106 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377072 | rmudgett | 2012-12-03 12:45:18 -0600 (Mon, 03 Dec 2012) | 21 lines
Cleanup CDR resources on exit.
* Simplify do_reload() return handling since it never returned anything
other than 0.
(issue ASTERISK-20649)
Reported by: Corey Farrell
Patches:
cdr-cleanup-1_8.patch (license #5909) patch uploaded by Corey Farrell
cdr-cleanup-10-11-trunk.patch (license #5909) patch uploaded by Corey Farrell
Modified
........
Merged revisions 377069 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377070 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377071 from http://svn.asterisk.org/svn/asterisk/branches/11
................
r377077 | rmudgett | 2012-12-03 13:17:24 -0600 (Mon, 03 Dec 2012) | 18 lines
Cleanup CLI resources on exit and CLI command registration errors.
(issue ASTERISK-20649)
Reported by: Corey Farrell
Patches:
cli-leaks-1_8-10.patch (license #5909) patch uploaded by Corey Farrell
cli-leaks-11-trunk.patch (license #5909) patch uploaded by Corey Farrell
Modified
........
Merged revisions 377073 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377074 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377075 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377083 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
* Renamed some taskprocessor listener callbacks
* Fixed what would become a refcounting issue for pools
* Removed some XXX comments from allocation failure points
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377061 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377035 | oej | 2012-12-03 10:45:49 -0600 (Mon, 03 Dec 2012) | 2 lines
Formatting fixes
................
r377040 | rmudgett | 2012-12-03 11:10:40 -0600 (Mon, 03 Dec 2012) | 16 lines
Fix CCSS CLI commands and logger level not unregistered.
(issue ASTERISK-20649)
Reported by: Corey Farrell
Patches:
ccss-cleanup-all.patch (license #5909) patch uploaded by Corey Farrell
........
Merged revisions 377037 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 377038 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 377039 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377047 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
That's a milestone, of sorts. Things really need
arranging/documenting, and there's no function to
be able to push tasks to a threadpool.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377036 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r377018 | oej | 2012-12-03 08:46:02 -0600 (Mon, 03 Dec 2012) | 5 lines
Move functions to AFTER the block of forward declarations of functions.
It was a mess. The first part of chan_sip.c is constants, declarations, structures and stuff,
then forward declarations and then actual code. It's still a mess, but a bit less messy ;-)
................
r377022 | file | 2012-12-03 08:56:36 -0600 (Mon, 03 Dec 2012) | 13 lines
Fix an RTP instance reference count leak in chan_motif.
When setting up an RTP instance the RTCP portion of the instance
keeps a reference to the instance itself. In order to release this
reference and stop RTCP the stop API call must be called before
destroying the instance.
(closes issue ASTERISK-20751)
Reported by: joshoa
........
Merged revisions 377021 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377028 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
........
r376998 | oej | 2012-12-03 03:35:55 -0600 (Mon, 03 Dec 2012) | 4 lines
Formatting changes
Found a large amount of missing {} in the code before patching in another branch
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@377003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376984 | file | 2012-11-30 18:47:42 -0600 (Fri, 30 Nov 2012) | 10 lines
Tweak extension used for incoming calls received on Motif.
Based on feedback from numerous individuals this patch tweaks incoming calls
to first look for an extension with the name of the endpoint. If no such extension
exists the call will silently fall back to the "s" extension as it previously
did.
........
Merged revisions 376983 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376953 | rmudgett | 2012-11-30 15:38:01 -0600 (Fri, 30 Nov 2012) | 24 lines
chan_misdn: Fix sending RELEASE_COMPLETE in response to SETUP.
Fix sending a RELEASE_COMPLETE in response to a SETUP if chan_misdn does
not have a B channel available to assign to the call.
(closes issue ABE-2869)
Reported by: Guenther Kelleter
Patches:
setup-reject_2.diff (license #6372) patch uploaded by Guenther Kelleter
Modified
........
Merged revision 376949 from https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
........
Merged revisions 376950 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376951 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376952 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376962 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376918 | mmichelson | 2012-11-30 10:56:53 -0600 (Fri, 30 Nov 2012) | 29 lines
Fix potential crashes during SIP attended transfers.
The principal behind this patch is simple. During a transfer,
we manipulate channels that are owned by a separate thread than
the one we currently are running in, so it makes sense that we
need to grab a reference to the channels so that they cannot
disappear out from under us.
In the wild, crashes were sometimes seen when the transferring
party would hang up the call before the transfer target answered
the call. The most common place to see the crash occur was when
attempting to send a connected line update to the transferer
channel.
(closes issue ASTERISK-20226)
Reported by Jared Smith
Patches:
ASTERISK-20226.patch uploaded by Mark Michelson (License #5049)
Tested by: Jared Smith
........
Merged revisions 376901 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376916 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376917 from http://svn.asterisk.org/svn/asterisk/branches/11
................
r376922 | seanbright | 2012-11-30 11:08:41 -0600 (Fri, 30 Nov 2012) | 11 lines
Minor spelling fix to the VOLUME documentation.
........
Merged revisions 376919 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376920 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376921 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376929 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
Still does not compile.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376898 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376867 | rmudgett | 2012-11-29 16:34:24 -0600 (Thu, 29 Nov 2012) | 13 lines
Fix compile error.
(issue ASTERISK-20724)
........
Merged revisions 376864 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376865 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376866 from http://svn.asterisk.org/svn/asterisk/branches/11
................
r376871 | rmudgett | 2012-11-29 17:01:16 -0600 (Thu, 29 Nov 2012) | 13 lines
chan_local: Fix local_pvt ref leak in local_devicestate().
Regression introduced by ASTERISK-20390 fix.
........
Merged revisions 376868 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376869 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376870 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376878 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376837 | elguero | 2012-11-29 15:58:41 -0600 (Thu, 29 Nov 2012) | 25 lines
Improve Code Readability And Fix Setting natdetected Flag
For 1.8, 10, 11 and trunk we are are improving the code readability.
For 11 and trunk, auto nat detection was added. The natdetected flag was being
set to 1 when the host address in the VIA header did not specifiy a port. This
patch fixes this by setting the port on the temporary sock address used to
SIP_STANDARD_PORT in order for the sock address comparison to work properly.
(closes issue ASTERISK-20724)
Reported by: Michael L. Young
Patches:
asterisk-20724-set-port-v2.diff uploaded by Michael L. Young (license 5026)
Review: https://reviewboard.asterisk.org/r/2206/
........
Merged revisions 376834 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376835 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376836 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376844 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
Does this compile? Not even close.
But I figure I don't want to lose this all in the case
of some catastrophe.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
........
r376820 | pkiefer | 2012-11-29 10:44:42 -0600 (Thu, 29 Nov 2012) | 14 lines
Fix chan_sip websocket payload handling
Websocket by default doesn't return an ast_str for the payload received. When
converting it to an ast_str on chan_sip the last character was being omitted,
because ast_str functions expects that the given length includes the trailing
0x00. payload_len only has the actual string length without counting the
trailing zero.
For most cases this passed unnoticed as most of SIP messages ends with \r\n.
(closes issue ASTERISK-20745)
Reported by: I?\195?\177aki Baz Castillo
Review: https://reviewboard.asterisk.org/r/2219/
........
r376821 | dlee | 2012-11-29 11:16:50 -0600 (Thu, 29 Nov 2012) | 5 lines
Fixed ast_random's comment about locking.
The original comment was separated from the code at some point, and didn't
reflect the use of libc's other than glibc for Linux.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376827 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376791 | rmudgett | 2012-11-28 18:48:12 -0600 (Wed, 28 Nov 2012) | 32 lines
Add MALLOC_DEBUG atexit unreleased malloc memory summary.
* Adds the following CLI commands to control MALLOC_DEBUG reporting of
unreleased malloc memory when Asterisk is shut down.
memory atexit list on
memory atexit list off
memory atexit summary byline
memory atexit summary byfunc
memory atexit summary byfile
memory atexit summary off
* Made check all remaining allocated region blocks atexit for fence
violations.
* Increased the allocated region hash table size by about three times. It
still isn't large enough considering the number of malloced blocks
Asterisk uses.
* Made CLI "memory show allocations anomalies" use
regions_check_all_fences().
Review: https://reviewboard.asterisk.org/r/2196/
........
Merged revisions 376788 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376789 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376790 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376761 | rmudgett | 2012-11-28 18:07:55 -0600 (Wed, 28 Nov 2012) | 25 lines
Enhance MALLOC_DEBUG CLI commands.
* Fixed CLI "memory show allocations" misspelling of anomalies option.
The command will still accept the original misspelling.
* Miscellaneous tweaks to CLI "memory show allocations" command output
format.
* Made CLI "memory show summary" summarize by line number instead of by
function if a filename is given.
* Made CLI "memory show summary" sort its output by filename or
function-name/line-number depending upon request.
* Miscellaneous tweaks to CLI "memory show summary" command output format.
........
Merged revisions 376758 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376759 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376760 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376728 | jrose | 2012-11-28 10:47:44 -0600 (Wed, 28 Nov 2012) | 22 lines
manager: Make challenge work with allowmultiplelogin=no
Prior to this patch, challenge would yield a multiple logins error if used
without providing the username (which isn't really supposed to be an argument
to challenge) if allowmultiplelogin was set to no because allowmultiplelogin
finds a user with a zero length login name. This check is simply disabled for
the challenge action when the username is empty by this patch.
(closes issue ASTERISK-20677)
Reported by: Vladimir
Patches:
challenge_action_nomultiplelogin.diff uploaded by Jonathan Rose (license 6182)
........
Merged revisions 376725 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376726 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376727 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376691 | rmudgett | 2012-11-27 18:13:10 -0600 (Tue, 27 Nov 2012) | 39 lines
Fix extension matching with the '-' char.
The '-' char is supposed to be ignored by the dialplan extension matching.
Unfortunately, it's treatment is not handled consistently throughout the
extension matching code.
* Made the old exten matching code consistently ignore '-' chars.
* Made the old exten matching code consistently handle case in the
matching.
* Made ignore empty character sets.
* Fixed ast_extension_cmp() to return -1, 0, or 1 as documented. The only
user of it in pbx_lua.c was testing for -1. It was originally returning
the strcmp() value for less than which is not usually going to be -1.
* Fix character set sorting if the sets have the same number of characters
and start with the same character. Character set [0-9] now sorts before
[02-9a] as originally intended.
* Updated some extension label and priority already in use warnings to
also indicate if the extension is aliased.
(closes issue ASTERISK-19205)
Reported by: Philippe Lindheimer, Birger "WIMPy" Harzenetter
Tested by: rmudgett
Review: https://reviewboard.asterisk.org/r/2201/
........
Merged revisions 376688 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376689 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376690 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376698 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376660 | rmudgett | 2012-11-27 14:39:51 -0600 (Tue, 27 Nov 2012) | 27 lines
Remove unnecessary channel module references.
* Removed call to ast_module_user_hangup_all() in res_config_mysql.c since
it is effectively a noop. No channels can attach a reference to that
module.
* Removed call to ast_module_user_hangup_all() in app_celgenuserevent.c.
The caller of unload_module() has already called it.
* Removed redundant channel module references in pbx_dundi.c. The
registered dialplan function callback dispatchers for the read/read2/write
callbacks already reference the module before calling.
* pbx_dundi: Moved unregistering CLI commands, DUNDi switch, and dialplan
functions to the first thing the unload_module() does. This will reduce
the chance of new channels using DUNDi services while the module is being
torn down.
........
Merged revisions 376657 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376658 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376659 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376630 | rmudgett | 2012-11-27 11:54:25 -0600 (Tue, 27 Nov 2012) | 13 lines
Made AST_LIST_REMOVE() simpler and use better names.
* Update doxygen of AST_LIST_REMOVE().
........
Merged revisions 376627 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376628 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376629 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376637 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376589 | mjordan | 2012-11-22 18:02:23 -0600 (Thu, 22 Nov 2012) | 29 lines
Re-initialize logmsgs mutex upon logger initialization to prevent lock errors
Similar to the patch that moved the fork earlier in the startup sequence to
prevent mutex errors in the recursive mutex surrounding the read/write thread
registration lock, this patch re-initializes the logmsgs mutex. Part of the
start up sequence before forking the process into the background includes
reading asterisk.conf; this has to occur prior to the call to daemon in order
to read startup parameters. When reading in a conf file, log statements can
be generated. Since this can't be avoided, the mutex instead is
re-initialized to ensure a reset of any thread tracking information.
This patch also includes some additional debugging to catch errors when
locking or unlocking the recursive mutex that surrounds locks when the
DEBUG_THREADS build option is enabled. DO_CRASH or THREAD_CRASH will
cause an abort() if a mutex error is detected.
(issue ASTERISK-19463)
Reported by: mjordan
Tesetd by: mjordan
........
Merged revisions 376586 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376587 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376588 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
........
r376575 | rmudgett | 2012-11-21 12:33:16 -0600 (Wed, 21 Nov 2012) | 20 lines
Add red-black tree container type to astobj2.
* Add red-black tree container type.
* Add CLI command "astobj2 container dump <name>"
* Added ao2_container_dump() so the container could be dumped by other
modules for debugging purposes.
* Changed ao2_container_stats() so it can be used by other modules like
ao2_container_check() for debugging purposes.
* Updated the unit tests to check red-black tree containers.
(closes issue ASTERISK-19970)
Reported by: rmudgett
Tested by: rmudgett
Review: https://reviewboard.asterisk.org/r/2110/
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376562 | dlee | 2012-11-20 16:06:05 -0600 (Tue, 20 Nov 2012) | 8 lines
Added missing newlines to websocket ast_logs.
Without these newlines, log messages just continue tacking onto the same
line, and do not flush immediately.
........
Merged revisions 376561 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376567 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376560 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376551 | mmichelson | 2012-11-20 13:09:37 -0600 (Tue, 20 Nov 2012) | 20 lines
Add "Require: timer" to 200 OK responses when appropriate.
The method by which the Require header is added to 200 responses is
inspired by the method that Olle Johansson uses in his darjeeling-prack
branch.
(closes issue ASTERISK-20570)
Reported by Matt Jordan, at the behest of Olle Johansson
Review: https://reviewboard.asterisk.org/r/2172
........
Merged revisions 376521 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376522 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376550 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376541 | alecdavis | 2012-11-20 11:39:11 -0600 (Tue, 20 Nov 2012) | 19 lines
Reduce CLI spam of "Extension Changed" device state messages.
Asterisk 11 follows RFC3265 that states that after every subscribe or resubscribe a notify should be sent.
Thus the console if filled continuously with the following after every subscribe;
== Extension Changed 8512[phones] new state IDLE for Notify User cisco1
In Asterisk 1.8 only changes would be sent. Thus only when a device state changed was anything emitted to the console.
fix:
Only print to console when device state isn't forced.
(closes ASTERISK-20706)
Reported by: alecdavis
Tested by: alecdavis
alecdavis (license 585)
........
Merged revisions 376540 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
taskprocessor is shutting down.
Moved code around to be easier to follow.
ast_taskprocessor_execute() will now return 0 if the taskprocessor is being shut down.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376499 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376498 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376472 | wdoekes | 2012-11-19 14:03:56 -0600 (Mon, 19 Nov 2012) | 17 lines
Fix most leftover non-opaque ast_str uses.
Instead of calling str->str, one should use ast_str_buffer(str). Same
goes for str->used as ast_str_strlen(str) and str->len as
ast_str_size(str).
Review: https://reviewboard.asterisk.org/r/2198
........
Merged revisions 376469 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376470 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376471 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
........
r376457 | mjordan | 2012-11-18 20:14:54 -0600 (Sun, 18 Nov 2012) | 7 lines
Fix uninitialized in this function error
With some versions of gcc, n_buckets will be flagged as being uninitialized
before use. While its technically impossible (since the switch statement,
even without a default, accounts for all possibilities), we'll initialize the
variable to 0 anyway.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376462 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376447 | mjordan | 2012-11-18 14:27:45 -0600 (Sun, 18 Nov 2012) | 55 lines
Reorder startup sequence to prevent lockups when process is sent to background
Although it is very rare and timing dependent, the potential exists for the
call to 'daemon' to cause what appears to be a deadlock in Asterisk during
startup. This can occur when a recursive mutex is obtained prior to the
daemon call executing. Since daemon uses fork to send the process into the
background, any threading primitives are unsafe to re-use after the call.
Implementations of pthread recursive mutexes are highly likely to store the
thread identifier of the thread that previously obtained the mutex. If
the mutex was locked prior to the fork, a subsequent unlock operation will
potentially fail as the thread identifier is no longer valid. Since the
mutex is still locked, all subsequent attempts to grab the mutex by other
threads will block.
This behavior exhibited itself most often when DEBUG_THREADS was enabled, as
this compile time option surrounds the mutexes in Asterisk with another
recursive mutex that protects the storage of thread related information. This
made it much more likely that a recursive mutex would be obtained prior to
daemon and unlocked after the call.
This patch does the following:
a) It backports a patch from Asterisk 11 that prevents the spawning of the
localtime monitoring thread. This thread is now spawned after Asterisk has
fully booted.
b) It re-orders the startup sequence to call daemon earlier during Asterisk
startup. This limits the potential of threading primitives being accessed
by initialization calls before daemon is called.
c) It removes calls to ast_verbose/ast_log/etc. prior to daemon being called.
Developers should send error messages directly to stderr prior to daemon,
as calls to ast_log may access recursive mutexes that store thread related
information.
d) It reorganizes when thread local storage is created for storing lock
information during the creation of threads. Prior to this patch, the
read/write lock protecting the list of threads in ast_register_thread would
utilize the lock in the thread local storage prior to it being initialized;
this patch prevents that.
On a very related note, this patch will *greatly* improve the stability of the
Asterisk Test Suite.
Review: https://reviewboard.asterisk.org/r/2197
(closes issue ASTERISK-19463)
Reported by: mjordan
Tested by: mjordan
........
Merged revisions 376428 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376431 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376441 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376453 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376416 | mjordan | 2012-11-18 08:31:32 -0600 (Sun, 18 Nov 2012) | 13 lines
Add a test event that reports changes in ConfBridge state
This patch adds a test event to ConfBridge that reports transitions between
states in ConfBridge. This is used by tests in the Asterisk Test Suite
that verify state changes based on the entering/leaving of conference
participants.
........
Merged revisions 376414 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376415 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376422 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
This throws a random number to each task and stores a copy locally. After
all tasks have executed, the data is checked to be sure tasks executed
in the correct order.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376412 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
Changes the ast_cond_wait() to an ast_cond_timedwait() so that
if there is an issue, we'll never wait forever for the task to
finish execution.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376383 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376382 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
This helps account for the fact that it is unknown just
how many references may exist for a given taskprocessor
listener, so simply unreffing it from the taskprocessor
shutdown function is not enough to convey the gravity
of the situation.
By putting in a shutdown callback, it now becomes clear
to the listener not to try to do any further operations
on the taskprocessor.
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376381 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376341 | dlee | 2012-11-15 18:08:00 -0600 (Thu, 15 Nov 2012) | 34 lines
Migrate hashtest/hashtest2 to be unit tests.
Both hashtest and hashtest2 are manual testing apps that thrash hash
tables (hashtab and ao2 containers, respectively), by spinning up
several threads that randomly insert, delete, lookup and iterate over
the hash table. If the app doesn't crash, the hash table probably passes
the test. Those utils are not a part of the typical Asterisk build, so
they do not usually get compiled. This all makes them less that useful.
This patch removes those manual test programs and replaces them with
Asterisk unit test modules (test_{hashtab,astobj2}_thrash.so). It also
attempts to make the tests more deterministic.
* Rather than spinning up some number of threads that operate on the
hash table randomly, spin up four threads that concurrenly add,
remove, lookup and iterate over the hash table.
* Each thread checks the state of the hash table both during and after
execution, and indicates a test failure if things are not as expected.
* Each thread times out after 60 seconds to prevent deadlocking the unit
test run.
(closes issue ASTERISK-20505)
Reported by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/2189/
........
Merged revisions 376306 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376315 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376339 from http://svn.asterisk.org/svn/asterisk/branches/11
................
r376344 | dlee | 2012-11-15 18:14:00 -0600 (Thu, 15 Nov 2012) | 1 line
Somehow I put in svn-1.6 merge information. Oops.
................
r376345 | dlee | 2012-11-15 18:15:30 -0600 (Thu, 15 Nov 2012) | 15 lines
Fixed extconf.c breakage introduced in r376306.
To quote wdoekes:
> Note that I'm not confirming legitimacy of having that file in tree at
> all. Is anyone using aelparse/conf2ael?
........
Merged revisions 376340 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376342 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376343 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376312 | jrose | 2012-11-15 17:10:13 -0600 (Thu, 15 Nov 2012) | 23 lines
app_meetme: Fix channels lingering when hung up under certain conditions
Channels would get stuck and MeetMe would repeatedly display an Unable
to write frame to channel error in the conf_run function if hung up
during certain sound prompts such as during user count announcements.
This patch fixes that by reintroducing a hangup check in the meetme's
main loop (also in conf_run).
(closes issue ASTERISK-20486)
Reported by: Michael Cargile
Review: https://reviewboard.asterisk.org/r/2187/
Patches:
meetme_hangup_patch_ASTERISK-20486_v3.diff uploaded by Jonathan Rose (license 6182)
........
Merged revisions 376307 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376308 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376310 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376320 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376291 | beagles | 2012-11-15 08:35:01 -0600 (Thu, 15 Nov 2012) | 14 lines
Patch to prevent stopping the active generator when it is not the silence
generator.
This patch introduces an internal helper function to safely check whether the
current generator is the one that is expected before deactivating it. The
current externally accessible ast_channel_stop_generator() function has been
modified to be implemented in terms of the new function.
(closes issue ASTERISK-19918)
Reported by: Eduardo Abad
........
Merged revisions 376217 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376296 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|
|
file:///srv/subversion/repos/asterisk/trunk
................
r376282 | newtonr | 2012-11-14 20:29:40 -0600 (Wed, 14 Nov 2012) | 16 lines
(issue ASTERISK-20280)
(closes issue ASTERISK-20280)
Reported by: Tomo Takebe
Tested by: Rusty Newton
Patches:
asterisk20280.patch uploaded by Rusty Newton (license 5829)
........
Merged revisions 376262 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376263 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 376264 from http://svn.asterisk.org/svn/asterisk/branches/11
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/team/mmichelson/threadpool@376287 65c4cc65-6c06-0410-ace0-fbb531ad65f3
|