Skip to content
Snippets Groups Projects
  1. Aug 07, 2007
  2. Aug 06, 2007
  3. Aug 05, 2007
  4. Aug 03, 2007
    • Russell Bryant's avatar
      Merged revisions 78101 via svnmerge from · 224dd669
      Russell Bryant authored
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
      r78101 | russell | 2007-08-03 15:14:06 -0500 (Fri, 03 Aug 2007) | 10 lines
      
      (closes issue #10194)
      Reported by: blitzrage
      Patches:
            bug0010194 uploaded by vovochka
      Tested by: blitzrage
      
      Fix a problem when you call Voicemail() with multiple mailboxes specified and 
      ODBC_STORAGE is in use.  The audio part of the message was only given to the
      first mailbox specified.
      
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78102 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      224dd669
    • Russell Bryant's avatar
      Merged revisions 78095 via svnmerge from · befb383d
      Russell Bryant authored
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
      r78095 | russell | 2007-08-03 14:39:49 -0500 (Fri, 03 Aug 2007) | 28 lines
      
      Add some improvements to lock debugging.  These changes take effect
      with DEBUG_THREADS enabled and provide the following:
      
       * This will keep track of which locks are held by which thread as well as
         which lock a thread is waiting for in a thread-local data structure.  A
         reference to this structure is available on the stack in the dummy_start()
         function, which is the common entry point for all threads.  This information
         can be easily retrieved using gdb if you switch to the dummy_start() stack
         frame of any thread and print the contents of the lock_info variable.
      
       * All of the thread-local structures for keeping track of this lock information
         are also stored in a list so that the information can be dumped to the CLI
         using the "core show locks" CLI command.  This introduces a little bit of a
         performance hit as it requires additional underlying locking operations
         inside of every lock/unlock on an ast_mutex.  However, the benefits of
         having this information available at the CLI is huge, especially considering
         this is only done in DEBUG_THREADS mode.  It means that in most cases where
         we debug deadlocks, we no longer have to request access to the machine to
         analyze the contents of ast_mutex_t structures.  We can now just ask them
         to get the output of "core show locks", which gives us all of the information
         we needed in most cases.
      
      I also had to make some additional changes to astmm.c to make this work when
      both MALLOC_DEBUG and DEBUG_THREADS are enabled.  I disabled tracking of one
      of the locks in astmm.c because it gets used inside the replacement memory
      allocation routines, and the lock tracking code allocates memory.  This caused
      infinite recursion.
      
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      befb383d
    • Russell Bryant's avatar
      Merged revisions 78063 via svnmerge from · 661fa0b3
      Russell Bryant authored
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
      r78063 | russell | 2007-08-03 12:01:07 -0500 (Fri, 03 Aug 2007) | 4 lines
      
      Only pass through HOLD and UNHOLD control frames when the mohinterpret option
      is set to "passthrough".  This was pointed out by Kevin in the middle of a
      training session.
      
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78064 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      661fa0b3
    • Russell Bryant's avatar
      Merged revisions 78028 via svnmerge from · bcabfbb8
      Russell Bryant authored
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
      r78028 | russell | 2007-08-02 21:04:22 -0500 (Thu, 02 Aug 2007) | 6 lines
      
      Don't reuse the timespec that was set to 0 in the previous timedwait as it
      will just return immediately.  Also, fix some logic so the thread's lock
      isn't unlocked twice in the weird case of dynamic threads getting acquired
      right after a timeout.
      (pointed out by SteveK)
      
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78029 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      bcabfbb8
  5. Aug 02, 2007
Loading