Commit Graph

36 Commits

Author SHA1 Message Date
Tilghman Lesher 919b0b5f54 Revert changes for now, pending discussion
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@246863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-16 15:36:53 +00:00
Tilghman Lesher 22b144cef4 Change the blanket rules to delete .lastclean on all CFLAGS menuselect targets to be more particular.
This change builds upon the recent change to menuselect to add 'touch_on_change'
as an attribute of both categories and members.  This should allow only the most
invasive defines to cause a complete rebuild, while defines which only affect a
subset of modules will only cause a rebuild of that smaller set.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@246789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-16 00:52:45 +00:00
Tilghman Lesher bbc47dbac2 Merged revisions 242966 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242966 | tilghman | 2010-01-25 15:36:33 -0600 (Mon, 25 Jan 2010) | 2 lines
  
  Only rebuild parsers by an option in menuselect
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242967 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 21:38:33 +00:00
Russell Bryant cba19c8a67 Convert the ast_channel data structure over to the astobj2 framework.
There is a lot that could be said about this, but the patch is a big 
improvement for performance, stability, code maintainability, 
and ease of future code development.

The channel list is no longer an unsorted linked list.  The main container 
for channels is an astobj2 hash table.  All of the code related to searching 
for channels or iterating active channels has been rewritten.  Let n be 
the number of active channels.  Iterating the channel list has gone from 
O(n^2) to O(n).  Searching for a channel by name went from O(n) to O(1).  
Searching for a channel by extension is still O(n), but uses a new method 
for doing so, which is more efficient.

The ast_channel object is now a reference counted object.  The benefits 
here are plentiful.  Some benefits directly related to issues in the 
previous code include:

1) When threads other than the channel thread owning a channel wanted 
   access to a channel, it had to hold the lock on it to ensure that it didn't 
   go away.  This is no longer a requirement.  Holding a reference is 
   sufficient.

2) There are places that now require less dealing with channel locks.

3) There are places where channel locks are held for much shorter periods 
   of time.

4) There are places where dealing with more than one channel at a time becomes 
   _MUCH_ easier.  ChanSpy is a great example of this.  Writing code in the 
   future that deals with multiple channels will be much easier.

Some additional information regarding channel locking and reference count 
handling can be found in channel.h, where a new section has been added that 
discusses some of the rules associated with it.

Mark Michelson also assisted with the development of this patch.  He did the 
conversion of ChanSpy and introduced a new API, ast_autochan, which makes it 
much easier to deal with holding on to a channel pointer for an extended period 
of time and having it get automatically updated if the channel gets masqueraded.
Mark was also a huge help in the code review process.

Thanks to David Vossel for his assistance with this branch, as well.  David 
did the conversion of the DAHDIScan application by making it become a wrapper 
for ChanSpy internally.

The changes come from the svn/asterisk/team/russell/ast_channel_ao2 branch.

Review: http://reviewboard.digium.com/r/203/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@190423 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-24 14:04:26 +00:00
Tilghman Lesher 8f28bfc63e Merged revisions 187300-187301 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r187300 | tilghman | 2009-04-08 23:31:38 -0500 (Wed, 08 Apr 2009) | 3 lines
  
  Add debugging mode for diagnosing file descriptor leaks.
  (Related to issue #14625)
........
  r187301 | tilghman | 2009-04-08 23:32:40 -0500 (Wed, 08 Apr 2009) | 2 lines
  
  Oops, missed this file in the last commit.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@187302 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-09 04:59:05 +00:00
Russell Bryant 4b16e0f051 Don't enable something by default that has a dependency on something _not_ enabled by default.
menuselect was not happy with this.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@175255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-12 19:11:08 +00:00
Sean Bright 6cf6d9eca5 Merge in changes that allow Asterisk to be built against the Hoard
memory allocator.  See doc/hoard.txt for more details.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@135405 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-03 16:14:14 +00:00
Kevin P. Fleming 6291cd19bf remove remaining Zaptel references in various places
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@134086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-28 16:42:00 +00:00
Tilghman Lesher 0ecc7e302d Optionally build integer-based routines for FSK tone decoding (but default
to the more accurate float-based routines).
(Closes issue #11679)
(Step 1 of 2)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@132510 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-21 20:59:03 +00:00
Tilghman Lesher e347f8bc70 Merged revisions 127133 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r127133 | tilghman | 2008-07-01 15:25:37 -0500 (Tue, 01 Jul 2008) | 2 lines

Disable the old, slow search for matching callno in chan_iax2 (but allow it to be reenabled for debugging)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@127143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-01 20:28:54 +00:00
Terry Wilson 1eb31edde2 Re-add HTTP post support by moving to res_http_post.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112426 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-02 15:25:48 +00:00
Jason Parker 10020f41fb Merged revisions 109973 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109973 | qwell | 2008-03-19 12:12:52 -0500 (Wed, 19 Mar 2008) | 5 lines

People report bugs about Asterisk crashing with DO_CRASH enabled was getting a little silly...

Now we only show certain cflags when you run configure with --enable-dev-mode
(corresponding menuselect change to follow)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109974 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 17:15:14 +00:00
Terry Wilson e727d15d34 Replace minimime with superior GMime library so that the entire contents of an http post are not read into memory.
This does introduce a dependency on the GMime library for handling HTTP POSTs, but it is available in most distros.

If the library is present, then the compile flag for ENABLE_UPLOADS is enabled by default in menuselect.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109229 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 22:10:06 +00:00
Tilghman Lesher 26755e3882 Context tracing for channels
(closes issue #11268)
 Reported by: moy
 Patches: 
       chantrace-datastored-encapsulated-rev94934.patch uploaded by moy (license 222)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103754 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-18 04:43:33 +00:00
Jason Parker 8dc5e09ccb Add several busy detection related defines to menuselect.
Allow better busy detect debugging (with BUSYDETECT_DEBUG).

Remove very old BUSYDETECT and BUSY_DETECT_MARTIN defines.

(closes issue #11107)
Patches:
      busydetect_enhancement.patch uploaded by agx (license 298)
      busydetect-r94975.diff uploaded by sergee (license 138)

Additional changes/cleanup by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-17 20:51:26 +00:00
Tilghman Lesher c3fc2a76f5 Allow more spans than 32. Also, rearrange compiler flags so the most often
used flags appear closer to the top.
Reported by: tzafrir
Patch by: tzafrir,tilghman
(Closes issue #11528)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-26 22:38:02 +00:00
Steve Murphy 337c44236d This change set fixes bug 8126 in trunk. It is implemented via compile time options, activated via the menuselect stuff, which defaults to the old way. non-zero sample data added. Translate tables expressed in microseconds instead of milliseconds, with 5-digit data now instead of 3, giving 2 more digits of precision.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80113 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 22:53:48 +00:00
Kevin P. Fleming 5610bc06ea Merged revisions 77827 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77827 | kpfleming | 2007-07-31 10:53:42 -0500 (Tue, 31 Jul 2007) | 2 lines

DETECT_DEADLOCKS can't be enabled without DEBUG_THREADS or it does nothing

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77828 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-31 15:54:29 +00:00
Tilghman Lesher 6910e43b05 Add the flag to trigger an intentional crash on mutex errors
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76925 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-24 21:37:11 +00:00
Jason Parker 0b98b2a659 Nothing to see here.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-22 04:13:08 +00:00
Jason Parker 6cce2f3311 Add CLI command "marko show birthday" to show "birthday information"
for Mark Spencers upcoming 30th birthday.

To enable, run `make menuselect` and select the option MARKO_BDAY under Compiler Flags.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@58742 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-11 16:43:14 +00:00
Kevin P. Fleming 4764795b37 Merged revisions 49553 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49553 | kpfleming | 2007-01-04 16:51:01 -0600 (Thu, 04 Jan 2007) | 2 lines

add support for tracking thread-local-storage objects that exist via 'threadstorage' CLI commands

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49578 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-04 23:18:36 +00:00
Matthew Fredrickson 2cc96500bd Mergeing in Paul Cadach's chan_h323 changes *holds breath*
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 17:07:22 +00:00
Kevin P. Fleming e8ca23608d minor wording fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42263 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-07 16:42:04 +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
Kevin P. Fleming e49a367ecf commit russell's menuselect/buildoptions work with some changes:
reverted per-directory .cleancount support
  added ability for 'remove_on_change' to support multiple filenames
  add 'remove_on_change' support to members, not just categories
  only do 'remove_on_change' removals if the config is actually saved
  add a 'remove_on_change' entry for each module found by prep_moduledeps so that if it gets turned off any existing .o/.so files will disappear


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34577 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-18 12:52:08 +00:00
Russell Bryant 739385e761 remove the WITH_SMDI define
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32845 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:28:29 +00:00
Russell Bryant 06b381a54d add the ability to do the same thing as "make dont-optimize" by enabling the
option in menuselect.  This is very useful for developers if you want to ensure
that all of your builds are done without optimizations.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32434 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 00:25:23 +00:00
Russell Bryant 86205923df add DEBUG_CHANNEL_LOCKS to menuselect
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@29465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-22 16:34:45 +00:00
Russell Bryant a3ed43f0dc Move WITH_SMDI from the Makefiles to be handled by menuselect. It will now be
defined in buildopts.h. Also, remove a few more stray spaces in the gcc commands. 


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@27130 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-13 10:54:40 +00:00
Russell Bryant 476c7a53e1 add messages at the bottom of the menu for each of the defines
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26845 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-11 10:20:16 +00:00
Russell Bryant 44d4ed1b37 change the CFLAGS controlled by menuselect to be placed in a header file
instead of being added to the compiler commands.  This header file will be
installed and modules built outside of the main tree will be able to use the
same build options used to build the rest of Asterisk.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-11 09:50:41 +00:00
Kevin P. Fleming 8e9058679a remove T38_SUPPORT define that is no longer needed
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-30 08:47:47 +00:00
Russell Bryant 9a77832583 remove this option for now, because it can only be enabled when
optimizations aren't being used


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-28 00:59:30 +00:00
Russell Bryant a4bb5dbd08 add STACK_BACKTRACES to the CFLAGS selectable in menuselect
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@23012 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-27 21:26:24 +00:00
Kevin P. Fleming 574e14cbea Thanks to the fine work of Russell Bryant and Dancho Lazarov, we now have autoconf and menuselect tools for Asterisk!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-24 17:11:45 +00:00