Summary:ASTERISK-11045: [patch] Tweet, tweet
Reporter:Tilghman Lesher (tilghman)Labels:
Date Opened:2007-12-14 19:26:05.000-0600Date Closed:2007-12-18 17:03:29.000-0600
Versions:Frequency of
causesASTERISK-19867 asterisk fails to lower its priority when astcanary dies
Environment:Attachments:( 0) 20071214__canary.diff.txt
Description:When running Asterisk in realtime priority mode, it is sometimes the case that a thread will get stuck in runaway mode, making it impossible to diagnose what is wrong, as nobody can login to the machine.

I have attempted to remedy this by creating a canary; that is, I have created a process that runs in normal priority mode, which touches a file ever so often.  If it becomes unable to touch that file, it is typically because something in realtime priority is hogging the processor.  Should that happen, Asterisk will turn off realtime priority, thus allowing the machine to become manageable once again (and even more importantly, we will be able to debug the issue).
Comments:By: Digium Subversion (svnbot) 2007-12-18 17:03:29.000-0600

Repository: asterisk
Revision: 93804

U   trunk/main/asterisk.c
U   trunk/utils/Makefile
A   trunk/utils/astcanary.c

r93804 | tilghman | 2007-12-18 17:03:28 -0600 (Tue, 18 Dec 2007) | 5 lines

Add a canary process, for high priority mode (asterisk -p) to ensure that if
Asterisk goes into a busy loop, the machine will be recoverable.  We'd still
need to do a restart to put Asterisk back into high priority mode, but at
least a reboot won't be required. (Closes issue ASTERISK-11045)