DAHDI-Linux
  1. DAHDI-Linux
  2. DAHLIN-71

sending a large number of calls to app_meetme causes kernel panic

    Details

    • Type: Bug Bug
    • Status: Closed
    • Severity: Critical Critical
    • Resolution: Unresolved
    • Affects Version/s: 2.1.0.3
    • Target Release Version/s: 2.1.0.4
    • Component/s: wct4xxp
    • Labels:
      None
    • Mantis ID:
      14183
    • Regression:
      No

      Description

      On machine 1 create a dial file that calls machine 2 plays about 30 seconds of test messages and hangup. Create one of these every 5 seconds. On machine 2 put all incoming calls into a meetme conference. After a couple of hundred calls machine 2 kernel panics. I have dialed in using SIP and on the PRI.

                • ADDITIONAL INFORMATION ******

      Hardware: Dell PowerEdge SC440, TE405P quad T1
      OS: CentOS 5.0
      Dahdi Linux 2.1.0.3
      One PRI connected.

      extensions.conf:
      [general]
      static=yes
      writeprotect=no
      autofallthrough=yes

      [test]
      exten => s,1,Answer()
      exten => s,2,NoOp(exten:$

      {EXTEN}

      callerid:$

      {CALLERID(NUMBER)}

      )
      exten => s,3,Playback(tt-allbusy)
      exten => s,4,Wait(3.0)
      exten => s,5,Playback(tt-allbusy)
      exten => s,6,Wait(3.0)
      exten => s,7,Playback(tt-allbusy)
      exten => s,8,Wait(3.0)
      exten => s,9,Hangup()

      [newcall]
      exten => test,1,MeetMe(test,dp(#*)q)

        Activity

        Hide
        Digium Subversion added a comment -

        Repository: dahdi
        Revision: 5811

        U linux/trunk/drivers/dahdi/dahdi-base.c

        ------------------------------------------------------------------------
        r5811 | sruffell | 2009-01-26 01:19:12 -0600 (Mon, 26 Jan 2009) | 7 lines

        Ensure the channel is in a good state before placing it on the chans arrays.
        Also ensure that dahdi_receive holds the chan_lock while iterating over the
        chans array to prevent channels from entering or leaving the array while the
        interrupt handler is running.

        Related to issue DAHLIN-71 .

        ------------------------------------------------------------------------

        http://svn.digium.com/view/dahdi?view=rev&revision=5811

        Show
        Digium Subversion added a comment - Repository: dahdi Revision: 5811 U linux/trunk/drivers/dahdi/dahdi-base.c ------------------------------------------------------------------------ r5811 | sruffell | 2009-01-26 01:19:12 -0600 (Mon, 26 Jan 2009) | 7 lines Ensure the channel is in a good state before placing it on the chans arrays. Also ensure that dahdi_receive holds the chan_lock while iterating over the chans array to prevent channels from entering or leaving the array while the interrupt handler is running. Related to issue DAHLIN-71 . ------------------------------------------------------------------------ http://svn.digium.com/view/dahdi?view=rev&revision=5811
        Hide
        Shaun Ruffell added a comment -

        Revision 5811 of dahdi/linux/trunk resolved the issue on my system in the lab. If possible, could someone else give it a try before I call this issue closed?

        Show
        Shaun Ruffell added a comment - Revision 5811 of dahdi/linux/trunk resolved the issue on my system in the lab. If possible, could someone else give it a try before I call this issue closed?
        Hide
        Terry Whelan added a comment -

        I have started my usual test with this revision. I should know in about an hour.

        12 hours and some regression testing later all looks good. I tested with a couple of versions of asterisk 1.6, most importantly the 1.6.0.3 release. I always get the crash with the release version of dahdi, but never with this revision.

        Show
        Terry Whelan added a comment - I have started my usual test with this revision. I should know in about an hour. 12 hours and some regression testing later all looks good. I tested with a couple of versions of asterisk 1.6, most importantly the 1.6.0.3 release. I always get the crash with the release version of dahdi, but never with this revision.
        Hide
        Shaun Ruffell added a comment -

        TerryWhelan: thanks for testing. I'm going to go ahead and close this then now, and if someone else tests and have a problem potentially reopen. The next release of dahdi is due to enter release candidate stage here in the next few days, so this fix will be in dahdi-linux 2.2.0.

        Show
        Shaun Ruffell added a comment - TerryWhelan: thanks for testing. I'm going to go ahead and close this then now, and if someone else tests and have a problem potentially reopen. The next release of dahdi is due to enter release candidate stage here in the next few days, so this fix will be in dahdi-linux 2.2.0.
        Hide
        Digium Subversion added a comment -

        Repository: dahdi
        Revision: 5865

        _U linux/tags/2.1.0.4/
        U linux/tags/2.1.0.4/drivers/dahdi/dahdi-base.c
        U linux/tags/2.1.0.4/drivers/dahdi/dahdi_dynamic.c
        U linux/tags/2.1.0.4/drivers/dahdi/tor2.c
        U linux/tags/2.1.0.4/drivers/dahdi/wct1xxp.c
        U linux/tags/2.1.0.4/drivers/dahdi/wct4xxp/base.c
        U linux/tags/2.1.0.4/drivers/dahdi/wcte11xp.c
        U linux/tags/2.1.0.4/drivers/dahdi/wcte12xp/base.c
        U linux/tags/2.1.0.4/include/dahdi/kernel.h

        ------------------------------------------------------------------------
        r5865 | sruffell | 2009-01-27 20:54:51 -0600 (Tue, 27 Jan 2009) | 28 lines

        Merged revisions 5590,5811,5819 via svnmerge from
        https://origsvn.digium.com/svn/dahdi/linux/trunk

        ........
        r5590 | tzafrir | 2008-12-19 04:39:31 -0800 (Fri, 19 Dec 2008) | 4 lines

        Fix the safety check in tor2 to be for SPANS_PER_CARD

        Thanks to Eugene Teo, in a from issue DAHLIN-62 .

        ........
        r5811 | sruffell | 2009-01-25 23:19:47 -0800 (Sun, 25 Jan 2009) | 7 lines

        Ensure the channel is in a good state before placing it on the chans arrays.
        Also ensure that dahdi_receive holds the chan_lock while iterating over the
        chans array to prevent channels from entering or leaving the array while the
        interrupt handler is running.

        Related to issue DAHLIN-71 .

        ........
        r5819 | sruffell | 2009-01-26 11:44:36 -0800 (Mon, 26 Jan 2009) | 3 lines

        Manipulate the REGISTERED flag with atomic bitops now since the bit is set
        outside the protection of any locks.

        ........

        ------------------------------------------------------------------------

        http://svn.digium.com/view/dahdi?view=rev&revision=5865

        Show
        Digium Subversion added a comment - Repository: dahdi Revision: 5865 _U linux/tags/2.1.0.4/ U linux/tags/2.1.0.4/drivers/dahdi/dahdi-base.c U linux/tags/2.1.0.4/drivers/dahdi/dahdi_dynamic.c U linux/tags/2.1.0.4/drivers/dahdi/tor2.c U linux/tags/2.1.0.4/drivers/dahdi/wct1xxp.c U linux/tags/2.1.0.4/drivers/dahdi/wct4xxp/base.c U linux/tags/2.1.0.4/drivers/dahdi/wcte11xp.c U linux/tags/2.1.0.4/drivers/dahdi/wcte12xp/base.c U linux/tags/2.1.0.4/include/dahdi/kernel.h ------------------------------------------------------------------------ r5865 | sruffell | 2009-01-27 20:54:51 -0600 (Tue, 27 Jan 2009) | 28 lines Merged revisions 5590,5811,5819 via svnmerge from https://origsvn.digium.com/svn/dahdi/linux/trunk ........ r5590 | tzafrir | 2008-12-19 04:39:31 -0800 (Fri, 19 Dec 2008) | 4 lines Fix the safety check in tor2 to be for SPANS_PER_CARD Thanks to Eugene Teo, in a from issue DAHLIN-62 . ........ r5811 | sruffell | 2009-01-25 23:19:47 -0800 (Sun, 25 Jan 2009) | 7 lines Ensure the channel is in a good state before placing it on the chans arrays. Also ensure that dahdi_receive holds the chan_lock while iterating over the chans array to prevent channels from entering or leaving the array while the interrupt handler is running. Related to issue DAHLIN-71 . ........ r5819 | sruffell | 2009-01-26 11:44:36 -0800 (Mon, 26 Jan 2009) | 3 lines Manipulate the REGISTERED flag with atomic bitops now since the bit is set outside the protection of any locks. ........ ------------------------------------------------------------------------ http://svn.digium.com/view/dahdi?view=rev&revision=5865

          People

          • Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development