osd2web 0.3.0 auf 22.04 LTS zeigt nur noch weißen Bildschirm

  • Hallo,


    seit dem Update von osd2web auf 0.3.0 sehe ich auf meinem TFT nur noch einen weißen Bildschirm. Rufe ich osd2web im Netzwerk mit einem Browser auf, stürzt der vdr ab. Im Log findet man dann das hier:

    Code
    Oct 13 22:28:58 vdr vdr: osd2web: HTTP: Requested uri: (12) '/data/getenv'
    Oct 13 22:28:58 vdr kernel: [ 1362.627462] vdr[4905]: segfault at c ip 00007fd3c04c91cc sp 00007fd36e7fb2a0 error 6 in libvdr-osd2web.so.2.6.1[7fd3c04b3000+2e000]
    Oct 13 22:28:58 vdr kernel: [ 1362.627477] Code: ff ff ff 48 8b 85 10 ff ff ff 48 89 c7 e8 c4 be ff ff 48 8b 85 38 ff ff ff 48 89 c7 e8 9d b6 fe ff 89 c2 48 8b 85 d0 fe ff ff <89> 50 0c 48 8b 85 d0 fe ff ff 8b 40 0c 8d 50 11 48 8b 85 d0 fe ff

    Das habe ich bereits im entsprechenden osd2web Thread gefragt, wo man mir riet mal einen Backtrace zu machen.


    Ich habe jetzt versucht einen Backtrace zu erstellen, der wird wohl auch erstellt, ich erhalte zumindest die Meldung: "Speicherzugriffsfehler (Speicherabzug geschrieben)", nur, wo wird der Speicherabzug hingeschrieben? Im aktuellen Verzeichnis ist er nicht zu finden.


    massi

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • Ja, vor systemd war das alles viel einfacher.

    Mit "sudo coredumpctl" kann du sehen, welche coredumps es gibt.

    Mit "sudo coredumpctl -o /tmp/vdr.dump dump /usr/bin/vdr" speicherst du den letzten vdr coredump in /tmp/vdr.dump


    Dann in den Debuger laden: "gdb -c /tmp/vdr.dump /usr/bin/vdr"

    Dann die Ausgabe von "bt full" posten.


    Das ganze macht nur Sinn, wenn dein VDR und die Plugins mit Debug Options gebaut sind, oder die Packete vdr-dbg vdr-plugin-<Name>-dbg installiert wurden.

  • Danke, nur leider gibt's da ein Problem.

    Um den Befehl coredumpctl zu bekommen, muss ich das systemd-coredump Paket installieren, dann werden aber zwei Pakete entfernt, apport und ubuntu-server


    Da wird wohl bei Ubuntu 22.04 apport benutzt, da muss ich mich erstmal einlesen wie das funktioniert.


    vdr-dbg und das entsprechende plugin-dbg hatte ich installiert.

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • apport habe ich deinstalliert, das macht auf einem headless System wenig Sinn.


    Jetzt funktioniert das auch mit dem Backtrace.


    Aber noch eine andere Frage, ich scheine ja der einzige zu sein, der dieses Problem hat.

    Und, gibt es vielleicht noch die Sourcen einer alten Version irgendwo?

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • Inzwischen habe ich herausbekommen, daß es irgendwo beim Start des kiosk-browser hapert. Er wird zwar beim vdr-Start gestartet, aber er zeigt nur eine weiße Seite.


    Starte ich den kiosk-browser über die Kommandzeile mit einer passenden url bekomme ich ein Bild auf meinem TFT.

    Code
    DISPLAY=:0.1 kiosk-browser http://192.168.1.5:4444/skins/horchiTft/index.html?theme=gray

    Allerdings hagelt es auch einige Fehlermeldungen:


    Meine /var/lib/vdr/.config/systemd/user/osd2web.service sieht so aus:


    Auch wenn ich den kiosk-browser durch firefox ersetze wird mir nichts angezeigt, der firefox lässt sich aber ebenfalls über den o.a. Befehl von der Kommandozeile starten.


    Eine Frage noch dazu, wenn ich die obige osd2web.service ändere und versuche osd2web mittels

    Code
    sudo -u vdr DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/666/bus systemctl --user restart osd2web.service

    zu starten, bekomme ich immer diesen Hinweis:

    Code
    Warning: The unit file, source configuration file or drop-ins of osd2web.service changed on disk. Run 'systemctl --user daemon-reload' to reload units.

    Leider bringt die Eingabe von systemctl --user daemon-reload und ein neustarten des vdr nichts, das Warning verschwindet erst, wenn ich den vdr neu boote. Was muss ich tun, damit ich nach einer Änderung an der Datei nicht immer neu booten muss. Oder kann ich die Browservariable in/var/lib/vdr/.config/systemd/user/osd2web/config irgendwie übersteuern? (browser= habe ich schon versucht, das funktioniert nicht)


    Ich fummele hier jetzt schon seit zwei Stunden rum und komme nicht dahinter, wo es hapert. Das Problem trat nach dem letzten oder vorletzten apt dist-upgrade auf.


    Irgendjemand eine Idee?


    massi

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • Ich kann das Problem an meinem Testsystem mit einer GT1030 und dem nvidia-Treiber 535.113.01 nicht nachvollziehen, hier startet der kiosk-browser klaglos und ohne die EGL-Warnungen - ist mit dem nvidia-Treiber alles in Ordnung, da gab es vor ein paar Wochen IIRC ein ziemliches Schlamassel bei Updates?

    Leider bringt die Eingabe von systemctl --user daemon-reload und ein neustarten des vdr nichts, das Warning verschwindet erst, wenn ich den vdr neu boote. Was muss ich tun, damit ich nach einer Änderung an der Datei nicht immer neu booten muss.

    Du musst das im Kontext der User-Session des Users vdr ausführen, also wie bei dem Befehl zum Neustarten des Systemd-Service die Umgebungsvariablen passend setzen:

    sudo -u vdr DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/666/bus systemctl --user daemon-reload

    Oder kann ich die Browservariable in/var/lib/vdr/.config/systemd/user/osd2web/config irgendwie übersteuern? (browser= habe ich schon versucht, das funktioniert nicht)

    Das ist der falsche Pfad - du musst die Datei /var/lib/vdr/.config/osd2web/config anlegen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Zitat

    ist mit dem nvidia-Treiber alles in Ordnung

    Weiß ich nicht, der nvidia-detector meldet mir Version 470, apt policy meldet folgendes:

    Code
    nvidia-driver-470:
      Installiert:           470.199.02-0ubuntu0.22.04.1
      Installationskandidat: 470.199.02-0ubuntu0.22.04.1
      Versionstabelle:
     *** 470.199.02-0ubuntu0.22.04.1 500
            500 http://de.archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages
            500 http://de.archive.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages
            100 /var/lib/dpkg/status
         470.103.01-0ubuntu2 500
            500 http://de.archive.ubuntu.com/ubuntu jammy/restricted amd64 Packages

    Ist schon was her, daß ich den installiert habe, soweit ich mich erinnere ist das der letzte Treiber mit dem meine Nvidia GT 640 noch läuft.


    Zitat


    Du musst das im Kontext der User-Session des Users vdr ausführen

    Mmpf, da hätte ich auch mal selber drauf kommen können...:-/


    Zitat


    Das ist der falsche Pfad

    Örks, stimmt natürlich.

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • Ich komme einfach nicht dahinter, ich habe jetzt den nvidia 470 Treiber, firefox und kiosk-browser gepurged und neu installiert.


    Wenn ich das script:

    Bash
    #!/bin/bash
    sudo -u vdr DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/666/bus systemctl --user restart osd2web.service

    aufrufe, bekomme ich diese Ausgabe, mit der ich aber als DAU nicht so viel anfangen kann.:-/


    Bin kurz davor meine alte vdr Installation wieder anzuklemmen.:-(

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • Da ich immer noch nicht weiß was das Problem ist, habe ich mir ein Provisorium gebastelt und lasse jetzt den kiosk-browser per cronjob nach dem Systemstart starten, nicht schön, aber funktioniert wenigstens.

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

  • dann liegt es ja nicht am Plugin und ich lege mich mal entspannt zurück ;)

    Das mit dem Browser und NVidia kann ich nicht testen, hab aktuell in keinem System eine NVidia Karte.


    Wenn du künftig das osd2web Plugin testen möchtest kannst du das von jedem beliebigen PC oder Handy aus machen.


    Mit /fb.html am Ende bekommst du BTW eine Fernbedienung für den VDR die ich u.a. für den VDR in der Chroot Umgebung verwende da dort das IR ein Schmerz ist.

  • Zitat

    dann liegt es ja nicht am Plugin

    Ja, sieht so aus.

    Ich kann ja von meinen Geräten im Netz die Webseite des osd2web ohne Probleme aufrufen, es läuft halt irgendwas beim Aufruf des kiosk-browser schief, nur was, da komme ich nicht dahinter.


    Die Fernbedienung ist ja cool.:-)


    Danke jedenfalls für Deine Hilfe!

    Blog


    VDR1 (Server): Gigabyte Z87-HD3, Intel(R) Core(TM) i7-4770S CPU @ 3.10GHz, 16GB RAM, NVIDIA GT 640 (Zotac), Digital Devices Cine V7, OrigenAE S21T, yavdr ansible an Röhre mit vga2scart

    VDR2 (Client): AsRock ION 330, yavdr-ansible auf Ubuntu 18.04 an Panasonic Beamer (HDMI)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!