Hallo,
ich habe bei meiner DM920 mehrfach spuradisch einen Enigma2 crash beim Ausschalten der Box.
Den Crashlog habe ich angehängt. Ich kann nicht erkennen warum die Box beim Ausschalten crached. Vieleich seht ihr die Ursache.
Viele Grüße
Aladin
Hallo,
ich habe bei meiner DM920 mehrfach spuradisch einen Enigma2 crash beim Ausschalten der Box.
Den Crashlog habe ich angehängt. Ich kann nicht erkennen warum die Box beim Ausschalten crached. Vieleich seht ihr die Ursache.
Viele Grüße
Aladin
Das Problem wurde hier in anderen Threads auch schon gemeldet und ist daher bekannt.
Bisher gibt es noch keine Lösung.
Grundsätzlich hat der Crash jedoch keine Auswirkung auf den weiteren Betrieb.
Ist in diesem Fall eher ein Schönheitsfehler
Der hotplug handler wurde dabei schon als möglicher "Verursacher" genannt.
Konnte aber noch nicht geprüft/bestätigt werden.
Bei mir schaltete sich der TV nicht aus als es gecrasht hat, HDMI CEC. Kann aber auch Zufall gewesen sein. Mal schauen beim nächsten crash
Das könnte gut möglich sein.
In meinen Crashlogs waren manchmal noch CEC-Einträge drin.
In anderen wieder nicht, da war direkt nach "stopping hotplug handler" schluss in der crashlog-section.
ich hab cec disabled... und trotzdem crashes.
Hat auch nichts mit CEC zu tun.
So, ich konnte es jetzt nachstellen.
Wenn die Box beim herunterfahren Crasht, wird über hdmi cec der TV nicht ausgeschaltet.
Das heißt, drückt man auf die FB Taste und geht aus dem Haus. Bleibt der TV an bis man wieder kommt.
P.S.: Jetzt kann Aresta mein Beitrag wieder Disliken
Edit: Crashlog hinzugefügt
Ich frage jetzt noch ein 3. Mal
Kann man das Hotplug-Plugin einfach deinstallieren oder bekommt man dann Probleme?
Wenn es dann nicht mehr crashed, ist es der Hotplug-handler.
Crashed es weiterhin ist er raus
Hallo,
das Hotplug-Plugin lässt sich nicht so einfach deinstallieren. Es gibt Abhängigkeitsprobleme. Ich weiß nicht welche Pakete noch deinstalliert werden müssen. Hat jemand einen Tipp ?
Viele Grüße
Aladin
@Guybrush2012: schon mal daran gedacht, dass der Crash passiert bevor die Box das Ausschaltkommando über HDMI-CEC absetzt?
root@dm900:~# apt-get remove --dry-run enigma2-plugin-systemplugins-hotplug
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
The following packages will be REMOVED:
enigma2-plugin-systemplugins-hotplug packagegroup-opendreambox-enigma2
...
0 upgraded, 1 newly installed, 2 to remove and 554 not upgraded.
Remv packagegroup-opendreambox-enigma2 [1.0-r1.6]
Remv enigma2-plugin-systemplugins-hotplug [4.3.1r8-r0.1]
Alles anzeigen
Ich denke, es wäre schlecht, wenn packagegroup-opendreambox-enigma2 entfernt wird.
Danke für die Info
Dann sollte man das wohl lieber lassen.
Wäre evtl. eine Variante gewesen um den hotplug-handler als Störenfried zu überführen
Man könnte im Plugincode evtl. ein paar print einbauen. Dann sieht man vielleicht was
Hab ich gerade mal gemacht (zumindest erst mal für die plugin.py)
Und alles live per ' journalctl -f -u enigma2' beobachtet.
hier 2 neue Zeilen, die man im Crashlog nie drin hat.
Vielleicht kann man daraus ja was ableiten.
Dec 30 22:31:51 dm920 enigma2[6911]: Segmentation fault
Dec 30 22:31:51 dm920 enigma2[6911]: 0xb4136150(sp=0xbebf60dc) <std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)+1096>
hier der gesamte Schlussteil:
Dec 30 22:31:51 dm920 enigma2[6911]: [EPGRefresh] Stopping Timer
Dec 30 22:31:51 dm920 enigma2[6911]: [TeleText] autostart(1, {})
Dec 30 22:31:51 dm920 enigma2[6911]: === autostart hotplug, reason: 1
Dec 30 22:31:51 dm920 enigma2[6911]: === shutdown hotplug before resourcemanager.getResource('Hotplug')
Dec 30 22:31:51 dm920 enigma2[6911]: === shutdown hotplug before if hotplug:
Dec 30 22:31:51 dm920 enigma2[6911]: === shutdown hotplug before resourcemanager.removeResource('Hotplug')
Dec 30 22:31:51 dm920 enigma2[6911]: === shutdown hotplug before hotplug.release()
Dec 30 22:31:51 dm920 enigma2[6911]: stopping hotplug handler
Dec 30 22:31:51 dm920 enigma2[6911]: === shutdown hotplug after hotplug.release()
Dec 30 22:31:51 dm920 enigma2[6911]: Segmentation fault
Dec 30 22:31:51 dm920 enigma2[6911]: 0xb4136150(sp=0xbebf60dc) <std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)+1096>
Dec 30 22:31:51 dm920 enigma2[6911]: -------
Dec 30 22:31:56 dm920 enigma2[6911]: main thread is non-idle! display spinner!
Dec 30 22:31:57 dm920 enigma2[6911]: [EPGC] schedule finished(1514669517)
Dec 30 22:31:57 dm920 enigma2[6911]: [EPGC] stop caching events(1514669517)
Dec 30 22:31:57 dm920 enigma2[6911]: [EPGC] next update in 60 min
Dec 30 22:31:57 dm920 enigma2[6911]: [EPGC] cleanup invalid data
Dec 30 22:32:02 dm920 systemd[1]: enigma2.service: Main process exited, code=dumped, status=6/ABRT
Dec 30 22:32:02 dm920 systemd[1]: enigma2.service: Unit entered failed state.
Dec 30 22:32:02 dm920 systemd[1]: enigma2.service: Failed with result 'core-dump'.
Dec 30 22:32:02 dm920 systemd[1]: enigma2.service: Service has no hold-off time, scheduling restart.
Dec 30 22:32:02 dm920 systemd[1]: Stopped enigma2.
Dec 30 22:32:02 dm920 systemd[1]: Starting enigma2...
Auch die hotplug.py läuft zumindest durch.
Der Segmentationsfehler ist wieder der Gleiche.
Dec 30 22:57:46 dm920 enigma2[7788]: === autostart hotplug, reason: 1
Dec 30 22:57:46 dm920 enigma2[7788]: === shutdown hotplug before resourcemanager.getResource('Hotplug')
Dec 30 22:57:46 dm920 enigma2[7788]: === shutdown hotplug before if hotplug:
Dec 30 22:57:46 dm920 enigma2[7788]: === shutdown hotplug before resourcemanager.removeResource('Hotplug')
Dec 30 22:57:46 dm920 enigma2[7788]: === shutdown hotplug before hotplug.release()
Dec 30 22:57:46 dm920 enigma2[7788]: stopping hotplug handler
Dec 30 22:57:46 dm920 enigma2[7788]: === stopping hotplug handler before self.__conn = None
Dec 30 22:57:46 dm920 enigma2[7788]: === stopping hotplug handler before self.__eventManager = None
Dec 30 22:57:46 dm920 enigma2[7788]: === stopping hotplug handler after self.__eventManager = None
Dec 30 22:57:46 dm920 enigma2[7788]: === shutdown hotplug after hotplug.release()
Dec 30 22:57:47 dm920 enigma2[7788]: Segmentation fault
Dec 30 22:57:47 dm920 enigma2[7788]: 0xb4056150(sp=0xbef6c0dc) <std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)+1096>
Könnte da was passieren, wenn man in der plugin.py diese beiden Zeilen komplett auskommentiert?
Beim Enigma-Neustart wird das doch eh alles neu gesetzt, oder ?
hier mal die komplette plugin.py:
from Components.ResourceManager import resourcemanager
from Hotplug import Hotplug
from Plugins.Plugin import PluginDescriptor
class HotplugNotifier():
def append(self, callback):
hotplug = resourcemanager.getResource("Hotplug")
if hotplug:
hotplug.registerEventCallback(callback)
def remove(self, callback):
hotplug = resourcemanager.getResource("Hotplug")
if hotplug:
hotplug.unregisterEventCallback(callback)
# Used by Netlink and event listeners. Needs to stay here
# for backwards compatibility. New users should use the
# resourceManager and (un-)registerEventCallback directly.
hotplugNotifier = HotplugNotifier()
def autostart(reason, **kwargs):
print "=== autostart hotplug, reason: ", reason
if reason == 0:
resourcemanager.addResource("Hotplug", Hotplug())
elif reason == 1:
print "=== shutdown hotplug before resourcemanager.getResource('Hotplug')"
hotplug = resourcemanager.getResource("Hotplug")
print "=== shutdown hotplug before if hotplug:"
if hotplug:
print "=== shutdown hotplug before resourcemanager.removeResource('Hotplug')"
resourcemanager.removeResource("Hotplug")
print "=== shutdown hotplug before hotplug.release()"
hotplug.release()
print "=== shutdown hotplug after hotplug.release()"
def Plugins(**kwargs):
return PluginDescriptor(name = "Hotplug", description = "listens to hotplug events", where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = True, fnc = autostart)
Alles anzeigen
Kannst du den Crash irgendwie zuverlässig reproduzieren? Eine Stelle könnte ich als Ursache sehen. Möchte das einfach zuerst mal selbst testen.
Naja, bei 10 x GUI-Neustart kommt auch irgendwann mal so ein GS
Genau auf den Punkt reproduzieren kann man es nicht.
Nur eben öfter einen GUI-Neustart machen.
dann probier es mal mit leerer epg.db ...
Wie bekomme ich die leer?
Sobald die Box neu startet und man auf einem Sender ist, wird die doch gleich wieder befüllt, oder ?
solange du nicht herumzappst hast du nur den EPG eines Transponders ... und das ist dann fast leer. Wenn du das SAT Kabel abhängst bleibt es sogar ganz leer sollte aber nicht nötig sein
also ich hatte den ersten crash, als ich noch kein satkabel angeschlossen hatte.
von daher...