[Home]

Summary:ASTERISK-17748: pickup beep choppy. debug log shows "Resource temporarily unavailable"
Reporter:Alec Davis (alecdavis)Labels:
Date Opened:2011-04-25 05:12:03Date Closed:2011-05-27 03:38:11
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_dahdi
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) debug.full.log
Description:chan_dahdi.c: Write returned -1 (Resource temporarily unavailable) on channel 35

hardware TDM800P

Every time during a pickup using the feature code *8 or Pickup(), the beep is either very short if picking up from a SIP phone, or very choppy if picking up from a DAHDI extension.



****** ADDITIONAL INFORMATION ******

The following tests all have problems.

SIP-A -> SIP-B, pickup with SIP-C, very short beep.
SIP-A -> DAHDI-A, pickup with SIP-C, very short beep.
SIP-A -> DAHDI-A, pickup with DAHDI_B, short choppy beep.
DAHDI-A -> SIP-A, pickup with SIP-B, no beep heard.
Comments:By: Alec Davis (alecdavis) 2011-04-25 05:17:32

DAHDI Version: 2.4.1.2 Echo Canceller:

No other calls on server, this is a test system.

If there is no call to pickup, the errorbeep sounds perfect from a DAHDI extension. SIP doesn't answer the call so you don't hear the pickupfailsound.

attached file: debug.full.log this is SIP-A dialing DAHDI/33 extenstion, where DAHDI/35 does the pickup using *8.

relevant section from features.conf to make *8 work
[general]
...
pickupexten = *8                ; Configure the pickup extension. (default is *8)
pickupsound = beep              ; to indicate a successful pickup (default: no sound)
pickupfailsound = beeperr       ; to indicate that the pickup failed (default: no sound)
...



By: Leif Madsen (lmadsen) 2011-04-26 07:56:14

I guess this issue is sufficiently different from the other pickup issue?

By: Alec Davis (alecdavis) 2011-04-26 13:48:42

I have seen in debug logs, 'Resource temporarily unavailable' before using Pickup() or *8.

But using pickup() in it's current state is 100% guaranteed to highlight this issue.
ASTERISK-17264 cleans the pickup issues up, and circumvents this issue, but still leaving an underlying problem, just won't be able to use pickup() to find it.

By: Shaun Ruffell (sruffell) 2011-05-05 11:15:34

Just a note:  The 'Resource temporarily unavailable' message is because Asterisk has completely filled up the transmit buffers in the kernel. It's like too much audio was written to the channel in to short a time.

By: Richard Mudgett (rmudgett) 2011-05-12 19:44:59

I could not reproduce this issue.  I kept running into either the SIP deadlock or chan_dahdi complaining of a gsm frame then dropping the call when the pickup was attempted.

I think the ASTERISK-17264 patch really fixes this issue.  The root cause of the choppy audio may have been two threads fighting over the audio stream.

By: Digium Subversion (svnbot) 2011-05-27 03:24:45

Repository: asterisk
Revision: 321210

U   branches/1.6.2/main/features.c

------------------------------------------------------------------------
r321210 | alecdavis | 2011-05-27 03:24:33 -0500 (Fri, 27 May 2011) | 16 lines

Fix *8 directed pickup locks system during pickupsound play out

move playout from sip_pickup_thread to bridge using BRIDGE_PLAY_SOUND method,
This stop the clash of 2 threads trying to write audio to same channel.
In addition fixes choppy audio beep in issue 19177.

(issue ASTERISK-17264)
(issue ASTERISK-17748)
Reported by: Docent
Patches:
     review1232-1.6.2.diff.txt uploaded by alecdavis (license 585)
Tested by: alecdavis

Review: https://reviewboard.asterisk.org/r/1232/


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

http://svn.digium.com/view/asterisk?view=rev&revision=321210

By: Digium Subversion (svnbot) 2011-05-27 03:31:28

Repository: asterisk
Revision: 321211

U   branches/1.8/main/features.c

------------------------------------------------------------------------
r321211 | alecdavis | 2011-05-27 03:31:15 -0500 (Fri, 27 May 2011) | 16 lines

Fix *8 directed pickup locks system during pickupsound play out

move playout from sip_pickup_thread to bridge using BRIDGE_PLAY_SOUND method,
This stop the clash of 2 threads trying to write audio to same channel.
In addition fixes choppy audio beep in issue 19177.

(issue ASTERISK-17264)
(issue ASTERISK-17748)
Reported by: Docent
Patches:
     review1232-1.88888888 alecdavis (license 585)
Tested by: alecdavis

Review: https://reviewboard.asterisk.org/r/1232/


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

http://svn.digium.com/view/asterisk?view=rev&revision=321211

By: Digium Subversion (svnbot) 2011-05-27 03:38:11

Repository: asterisk
Revision: 321212

_U  trunk/
U   trunk/main/features.c

------------------------------------------------------------------------
r321212 | alecdavis | 2011-05-27 03:38:00 -0500 (Fri, 27 May 2011) | 22 lines

Merged revisions 321211 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
 r321211 | alecdavis | 2011-05-27 20:31:15 +1200 (Fri, 27 May 2011) | 16 lines
 
 Fix *8 directed pickup locks system during pickupsound play out
 
 move playout from sip_pickup_thread to bridge using BRIDGE_PLAY_SOUND method,
 This stop the clash of 2 threads trying to write audio to same channel.
 In addition fixes choppy audio beep in issue 19177.
 
  (issue ASTERISK-17264)
  (issue ASTERISK-17748)
  Reported by: Docent
  Patches:
       review1232-1.8.diff.txt alecdavis (license 585)
  Tested by: alecdavis
 
 Review: https://reviewboard.asterisk.org/r/1232/
........

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

http://svn.digium.com/view/asterisk?view=rev&revision=321212