Callmonitor startet immer neue Subprozesse, die nicht terminieren
Ich habe Probleme mit CM 1.10.2: Immer, wenn ein ein- oder ausgehender Anruf stattfindet (klingeln reicht schon), werden zwei neue CM-Prozesse (keine Zombies, alle "Running") gestartet, die nicht mehr terminieren und die ganze Rechenzeit verbrauchen. Direkt nach dem Start sind es noch fünf Prozesse, dann nach dem ersten Anruf sieben, dann neun usw.
Im
strace sieht man:
Code:
/usr/sbin/callmonitor:
/mod/pkg/callmonitor/usr/lib/callmonitor/applets/callmonitor.sh: line 1:
cannot open /tmp/callers: no such file
Ralf Friedl half mir beim Analysieren. Er schreibt in einer E-Mail:
RalfFriedl schrieb:
So wie es aussieht, wird diese Meldung immer wieder ausgegeben. Am Ende laufen zwei Prozesse, (...) die beide nur darauf warten, daß andere von ihnen gestartete Prozesse beendet werden. Es gibt aber keine solchen Prozesse, daher blockiert der Aufruf nicht, sondern kommt mit Fehler zurück. Der Aufrufer kömmert sich aber nicht darum und ruft wait gleich wieder auf.
Das Ergebnis sind zwei Prozesse, die die ganze verfügbare CPU-Zeit verbrauchen. Wenn bei jedem Anruf weitere solche Prozesse dazukommen, ist irgendwann die stärkste Box überlastet.
Siehe zu diesem Problem auch
dort. Zunächst dachte ich, es hinge mit
usermand zusammen, den ich aus der Firmware gestrippt habe. Aber das ist es nicht, weil es mit und ohne
usermand passiert, wie inzwischen klar ist. Die Box läuft stabil, wenn Callmonitor deaktiviert ist.
Das ist jetzt nicht das erste Mal, daß eine CM-Version die Box ausbremst und/oder zum Reboot zwingt. Evtl. solltest Du mal über ein Redesign nachdenken oder anfangen, ein bißchen mit Einrückungen und Kommentaren zu arbeiten, um die verwirrende Vielzahl von Modulen etwas übersichtlicher zu gestalten. Da das CM-Paket auch von Dir "extern" gepflegt wird, haben wir es nicht im SVN-Repository und sehen nicht automatisch beim Einchecken die Diffs, was es erschwert, Änderungen zu erkennen, weil man immer manuell "diffen" müßte. Evtl. hast Du Lust, in Zukunft den CM in unserem SVN zu pflegen? Du bist jedenfalls herzlich dazu eingeladen von meiner Seite aus. Oliver hat bestimmt auch nichts dagegen. Dein Paket ist so wichtig und wird so häufig verwendet, daß es gut wäre, wenn ein gemeinsames Versionsmanagement mit dem DS-Mod stattfinden würde.