[yavdr-ansible@focal] VDR-PC friert ca. 1x pro Woche ein und ist unbedienbar

  • Seit ein paar Wochen schon habe ich sehr selten, ca. 1x pro Woche ein eigenartiges Problem mit meinem VDR:

    Mitten beim Live-TV schauen oder auch manchmal bei der Wiedergabe einer Aufzeichnung gibt es plötzlich ein Standbild, Ton ist weg und der VDR ist unbedienbar:

    * Der VDR reagiert auf keinerlei Eingaben mehr.

    * Mit ssh o.ä. komme ich nicht mehr auf die Konsole.

    * Das Netzwerk ist nicht mehr verfügbar.

    * Die Aktivitäts-LED am PC-Gehäuse zeigt ein Dauerleuchten, als ob die Platte unendlich viel arbeitet.

    * Ich habe schon mehr als 15 Minuten gewartet, aber es wird nicht besser, der VDR ist und bleibt unbedienbar.


    Hier hilft dann nur noch der brutale Weg über Stecker ziehen oder die Power-Taste länger drücken bis der PC ausgeht.

    Nach einem Neustart ist dann alles wieder i.O. und der VDR läuft einwandfrei, als wäre nichts gewesen.

    Im syslog gibt es dann sehr viele dieser Meldungen, solange bis ich den Stecker gezogen habe:

    Dabei fällt mir besonders die Meldungen von WebKitNetworkProcess  ...  und WebKitWebProcess auf.

    Die Suche im Inet bringt für mich leider keine Lösung zu tage, nur dass es wohl einige Leute gibt, die auch ab und zu Probleme damit haben und denen dann der RAM und auch der SWAP volläuft und deshalb der PC unbedienbar wird.

    In meinem PC sind 8GB RAM verbaut und ich habe noch ein /swapfile von 2GB, das hatte bisher immer für den VDR gereicht.



    Meine Frage wäre:

    1. Welches Plugin nutzt den WebKitWebProcess? Mir fällt da nur das osd2web ein, was ich für mein kleines TFT-Display nutze. Früher hatte ich dafür immer das graphtft-Plugin genutzt, aber das gibt es ja nicht mehr.
    2. Wie kann ich, um den fehler einzugrenzen, das osd2web-Plugin komplett deaktivieren? Wenn ich nur aus /etc/vdr/conf.d die 50-osd2web.conf lösche habe ich immer noch eine rudimentäre Anzeige vom Datum in dem TFT-Display stehen. Wo kommt das her bzw. wie kann ich das komplett deaktivieren?
    3. Bin ich der Einzige mit diesem Problem oder gibt es noch andere VDR-User die ab und zu dieses Problem haben?
  • Es heißt wohl richtigerweise: vdrctl disable osd2web


    Aber das ist vermutlich das Gleiche wie manuell die Datei /etc(vdr(conf.d/50-osd2web.conf löschen, denn es gibt nach einem reboot trotzdem noch die Anzeige vom Datum+Uhrzeit auf dem TFT-Display.


    Wichtiger wäre für mich, ob ich denn überhaupt mit meiner Vermutung richtig liege, dass das osd2web-Plugin diese Probleme verursachen könnte.

    Wird denn vom osd2web-Plugin dieses WebKitWebProcess verwendet?

    Oder ist es dieser kiosk-browser der hier mit benutzt wird?


    Ihr merkt schon, ich stochere hier ziemlich blind im Nebel herum, da ich überhaupt nicht weiß wo und nach was ich hier suchen muss. :(

  • Schau halt mal was beim deinstallieren für Abhängigkeiten angezeigt werden (aber halt nicht ausführen ;) ), dann siehst vielleicht etwas mehr an den Verbindungen. Ansonsten das genannte Plugin deaktivieren, wie auch immer und dann weiter beobachten.

    Gruß utiltiy



    VDR Projekte VDR Projects

  • Es gab bei dem Plugin mal (im letzen Jahr?) ein Memoryleak, das aber in der nächsten Version schnell gefixt wurde.

    Schalts mal ab und beobachte - oder brauchst du das Plugin täglich?

    MyVDR: yaVDR-Ansible (Ubuntu 18) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Ich will ja das osd2web-Plugin deaktivieren und habe das ja auch nun erstmal gemacht.

    Mich verunsichert eben nur noch, dass trotz deaktiviertem osd2web-Plugin immer noch etwas auf dem TFT-Display angezeigt wird, nämlich Datum+Uhrzeit.

    Letztere wird sogar immer aktualisiert, also ist da noch immer was aktiv. Ich weiß eben nur nicht was.


    Aber jetzt werde ich das erstmal so lassen und mal sehen was in den nächsten Tagen passiert.

    Denn wenn ich gleich mehrere Sachen auf einmal ändere weiß ich dann doch nicht woran es evtl. genau gelegen haben könnte!


    Jetzt muss ich eben ein paar Tage abwarten, ob dann der Fehler wieder bzw. immer noch auftritt. ;)



    Schau halt mal was beim deinstallieren für Abhängigkeiten angezeigt werden (aber halt nicht ausführen ), dann siehst vielleicht etwas mehr an den Verbindungen.

    Jetzt muss ich mich wiedermal als Nicht-Profi outen!

    Das wäre dann wie zu machen? :/

  • apt-get remove ... --no-act bzw. --simulate sollte die Deinstallation nur simulieren

    MyVDR: yaVDR-Ansible (Ubuntu 18) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • davie2000 ,

    danke für die Hilfe.

    Werde ich bei Gelegenheit mal testen.

  • Am besten WebKitGTK mal aktualisieren.

  • Auch das Installieren und Konfigurieren von earlyoom ist erwägenswert.

    --
    vdr User #2022 - hdvdr2: Lenovo SFF M83, Intel(R) Core(TM) i5-4670S, 12 GB Ram, zram-swap/tmp, ubuntu-focal, softhddevice-vdpau
    ddbridge-6.x mit 2xDVB-S2 und (Flex) 2xDVB-C/T Tunern, nvidia-GF720 SFF passiv (nvidia-dkms-460.67), System SSD btrfs,

    snapper, 8TB HDD XFS/cow /srv/vdr, yavdr-ansible-2.5.2-seahawk, vdr-epg-daemon mit Frodo-plugins, Kernel 5.12.0-rc7-xfsscrub

    vdradmin-am, live+webstreaming, vdrmanager (Smartphones als FB), ffmpeg-4.3.1-libfdk_aac, vdr-plugin-hbbtv. Folding@home läuft auf CPU.

  • Danke für die beiden letzten Tipps, werde ich auf jeden Fall im Hinterkopf behalten.

    An dem WebKitGTK habe ich ja nichts gemacht, dürfte also das aktuelle von Ubuntu-20.04 bereitgestellte sein.


    Momentan habe ich ja das osd2web-Plugin erstmal deaktiviert und werde nun warten, ob demnächst nochmals das Problem auftritt.


  • Fazit nach 2 Wochen mit deaktiviertem osd2web-Plugin:


    Seit dem ich vor ca. 2 Wochen das osd2web-Plugin deaktiviert habe, hatte ich keinerlei Probleme mehr mit einem "unbedienbaren" VDR weil der RAM und auch das /swapfile vollgelaufen ist. Ich habe sogar seit über einer Woche noch zusätzlich das /swapfile gelöscht und benutze somit nur noch die im PC verbauten 8GB RAM.

    Alles kein Problem!


    Für mich ist damit nach aktuellem Stand das osd2web-Plugin der Übeltäter und bleibt somit bis auf weiteres in Quarantäne! ;)

    Etwas wundere ich mich nur, dass kein anderer Benutzer des osd2web-Plugins diese Probleme zu haben scheint? Warum auch immer?


    Gebraucht und benutzt habe ich das osd2web-Plugin ja vor allem um mal schnell einen Timer zu programmieren ohne erst noch den großen TV einschalten zu müssen. Jetzt muss ich also in diesem Fall den TV einschalten, aber damit kann ich vorläufig leben.



    Bleibt noch die Frage für mich:

    Was mache ich nun mit dem verbauten TFT-Display? Ausbauen wäre doof, denn dann hätte ich ja ein Loch im Gehäuse. X/

    Gar nicht mehr benutzen ist auch nicht optimal.

    Vorstellen könnte ich mir auf dem Display eine 2. Instanz des VDR laufen zu lassen (ähnlich PIP).

    Oder noch besser wäre bei Bedarf KODI darüber anzuzeigen (ging ja schon einmal in yavdr-0.6), wenn ich mal nur Musik hören will, denn da brauche ich den großen TV absolut nicht. ;)

  • Für mich ist damit nach aktuellem Stand das osd2web-Plugin der Übeltäter und bleibt somit bis auf weiteres in Quarantäne!

    Dann sollte ich das besser im Playbook deaktivierbar machen. Wenn der Swap voll läuft riecht das nach einem Speicherleck... - kann man da einen ansteigenden RAM-Verbrauch beobachten?

    Oder noch besser wäre bei Bedarf KODI darüber anzuzeigen (ging ja schon einmal in yavdr-0.6), wenn ich mal nur Musik hören will, denn da brauche ich den großen TV absolut nicht.

    Das geht bei yavdr-ansible ebenfalls - nur ist das Konzept etwas anders - die Idee ist, dass man ein Display festlegt, auf dem yavdr-frontend die Ausgabe startet (und die osd2web.service würde dann jeweils das andere Display nutzen (https://github.com/yavdr/yavdr…es/bin/switch-displays.j2) - das kann man natürlich auch ohne osd2web machen, also z.B. um zwischen den Displays zu wechseln (damit wird das gerade aktive Frontend gestoppt und wieder auf dem anderen Bildschirm gestartet):

    Code
    1. #!/usr/bin/bash
    2. source <(systemctl --user show-environment)
    3. [[ "$DISPLAY" =~ \.1$ ]] && DISPLAY="${DISPLAY%.1}.0" || DISPLAY="${DISPLAY%.0}.1"
    4. frontend-dbus-send stop
    5. frontend-dbus-send setDisplay "$DISPLAY"
    6. frontend-dbus-send start


    Das Skript muss man dann aus der User-Session für den Benutzer vdr heraus (z.B. über die irexec-Instanz in der Session) oder über die commands.conf bzw. menuorg vom VDR (bei dem sind die Umgebungsvariablen passend gesetzt, dass er auf die Session zugreifen kann), aufrufen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 1 time, last by seahawk1986 ().

  • Hallo,


    ich hatte Anfangs auch Probleme mit osd2web auf meinem kleinen Gehäuse-TFT (800x600). Mit dem Standard Kiosk-Browser und diesem Skin hatte ich Fehlfunktion in der Anzeige. Der Bildschirm wanderte bei jedem Neustart stückweise nach oben. Könnte ein Speicherleck gewesen sein.

    Abhilfe schaffte die Verwendung von Firefox oder Chromium als Browser. Seither läuft es sehr stabil (bis auf gelegentliches Einfrieren der Uhrzeitanzeige).


    Gruß joe

  • Wenn der Swap voll läuft riecht das nach einem Speicherleck... - kann man da einen ansteigenden RAM-Verbrauch beobachten?

    Yepp, beides wird randvoll.

    Ich konnte das zufällig einmal sehen, als ich merkte, dass die Bedienung vom VDR plötzlich sehr träge wurde.

    Da konnte ich gerade noch einmal das systeminfo-Plugin aufrufen und dann war der VDR auch schon eingefroren und es gab nur noch Standbild, kein Ton und nichts ging mehr.

    Da war mir noch nicht klar, woher das evtl. kam. Erst in den letzten Monaten wurde es dann immer häufiger und dann ist mir im syslog der Eintrag mit dem osd2web-Plugin aufgefallen. Der rest ist Geschichte! ;)


    Das mit dem Wechseln der Displays für die Ausgabe, werde ich mir bei Gelegenheit mal näher anschauen.

    Danke für die Erklärung und die Tipps dazu. :)


    joe_pow ,

    bei Dir ist es vermutlich etwas anderes.

    Ich habe übrigens den "normalen" Standard-Skin vom osd2web-Plugin genutzt, keinen geänderten Skin.

  • Yepp, beides wird randvoll.

    Was hat denn da Speicher gefressen? Der VDR mit osd2web-Plugin oder der kioskbrowser?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • seahawk1986 ,

    was der Speicherfresser war kann ich nicht sagen, aber mir ist gerade noch was eingefallen.

    joe_pow hat mich nämlich jetzt auf die Idee gebracht, das daran vielleicht doch der Kiosk-Browser Schuld ist, wegen seiner Aussage:

    Abhilfe schaffte die Verwendung von Firefox oder Chromium als Browser. Seither läuft es sehr stabil (bis auf gelegentliches Einfrieren der Uhrzeitanzeige).


    Mir ist dazu eingefallen, dass ich ja damals schon bei yavdr-0.7-bionic das osd2web-Plugin verwendet habe, weil ja mit dem vdr-2.4.x die Unterstützung für das vorher immer genutzte graphtft-Plugin geendet hatte.

    Und da hatte ich (ich glaube wegen Problemen bei der Darstellung auf dem Display) den Kiosk-Browser durch den Firefox ersetzt. Damit lief es ja immer problemlos.

    Erst vor einem Jahr, als dann yavdr-0.7-focal kam, habe ich nach der Installation keine Änderungen vorgenommen und eben den Kiosk-Browser genutzt.


    Vielleicht liegt es wirklich am Kiosk-Browser und ich sollte es nochmals mit dem Firefox testen. :/

    Das war ja glaub ich gar nicht so schwierig, den Firefox an Stelle des Kiosk-Browsers zu verwenden.

    Muss ich nochmals nachschauen, wie ich das damals gemacht habe! ;)

  • Beim firefox würde mich eine stabile Lösung interessieren - für nicht-nvidia Systeme habe ich den schon in die osd2web.service eingebaut (weil da der kiosk-browser nur ein graues Bild liefert), aber da klappt der Start im Kiosk-Modus nicht leider regelhaft (falls da jemand eine Idee hat, warum der FF das nicht schafft, wäre das prima): https://github.com/yavdr/yavdr…er/osd2web.service.j2#L11

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Da Firefox bei joe_pow ja offenbar funktioniert, kann er vielleicht was dazu sagen? *wink*

    MyVDR: yaVDR-Ansible (Ubuntu 18) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Ich muss leider meine Aussagen korrigieren (getrübte Erinnerung). Verwende aktuell doch wieder den Kiosk-Browser unter 20.04.

    Habe aber vielleicht damit doch ein Problem, denn htop zeigt für den Prozess fast 100G virt Speicher an.

    Unter 18.04 ging der Kiosk-Browser nicht, da lief bei mir "chromium-browser --incognito --kiosk". Firefox lief aber auch.

    Unter 20.04 kann ich das nochmal am Wochenende testen.


    Aber wie gesagt, bei mir ging es nur darum, den Skin "smalltft" zum laufen zu bekommen.