1.6er Segfaults ohne Ende

  • Mal ne Frage. Läuft die 1.6er Version bei euch auch so instabil?
    Ich hab zuerst gentoo mit vdr versucht dann habe ich ein debian mit 1.6 versucht.
    nun habe ich es auf einem ubuntu system. dauernd habe ich irgend welche segfaults.
    Einige im Bekanntenkreis haben mich auch schon gefragt warum die 1.6 dauernd abschmiert. Was mir aufgefallen ist, meistens mach ich was mit Aufnahmen. Mal schauen Mal Stoppen oder auch einen Anlegen. Und scheinbar lief parallel immer eine Aufnahme. Ohne Aufnahme glaube habe ich das Problem noch nicht gehabt.


    Wie komme ich am einfachsten an den backtrace? Einfach als Root laufen lassen oder? Und wenn ja wo werden die core dumps hingeschmissen?


    1.4.7 läuft super, aber ich brauche halt den utf-8 support!

    mfg traxanos
    ____________________
    Ist das neu?, Nein Linux!


    VDR1: Zotac NM10-ITX Wifi - 2GB Ram - S2-6400 HD mit IR - yavdr 0.4 (development) - LianLi PC-Q11


    Tags: VDR-HD - AT5IONT-I - 4GB Ram - 512MB ION - TT 3600 DVB-S2 - TT6400-FF - Sundtek DVB-S2 Sundtek DVB-C - Tevii S480 (dank an L4M für kostenlose Bereitstellung) - yaVDR 0.5 (development) - SKY - HD+ - Atric - X10 FB - Zotac ID41 PLUS - SilverStone LC19B-R - Yamaha RX-V671 - Samsung 8Series 55"

  • bei mir läuft die 1.6.0-1 stabil und zuverlässig inkl. UTF8, habe aber auch alles selbst compiliert (unter opensuse 10.2/10.3).


    Core-dumps werden im "aktuellen Verzeichnis" abgelegt, also in dem Verzeichnis, das gerade aktiv war als VDR gestartet wurde.
    Irgendwann hatte ich mir mal hier aus einem Forenbeitrag folgendes gegreppet:


    Du kannst aber auch "gdb /usr/bin/vdr" eingeben (oder wo das Executable liegt) und dann am gdb-Prompt "run -L <libDir> -Pskinelchi -Pavards -Premote ..." eingeben, also hinter run alle Parameter anhängen und dann beim Absturz direkt mit bt einen Backtrace anzeigen lassen.


    Wenn Du zwei core-files hast, ist das dann ein Dual-Core? :lol2 (sorry, couldn't resist)

  • das mit dem ulimit kannte ich und funktioniert nicht. scheinbar muss der vdr als root laufen. bekomme nur ne eer-file in /tmp


    Code
    /usr/sbin/runvdr: line 83: 17248 Segmentation fault      LANG=de_DE.UTF-8 LC_ALL=de_DE.UTF-8 VDR_CHARSET_OVERRIDE=ISO-8859-15 /usr/bin/vdr -v /var/lib/video.00 -c /var/lib/vdr -L /usr/lib/vdr/plugins -r /usr/lib/vdr/vdr-recordingaction -s /usr/lib/vdr/vdr-shutdown-message -E /var/cache/vdr/epg.data -u vdr -g /tmp --port 2001 --lirc -P "dvd -C /var/cache/vdr/dvd" -P "dvdswitch --imagedir=/media/vdr/dvd" -P quickepgsearch -P epgsearch -P conflictcheckonly -P epgsearchonly -P extrecmenu -P femon -P "live --port=8080 --ip=192.168.10.203" -P nordlichtsepg -P osdpip -P "osdteletext -r" -P "remote -i autodetect" -P streamdev-server -P taste --vfat -w 60 -v /media/vdr


    Aber ich glaube ich kann es so Reproduzieren und werde den vdr nun direkt starten.

    mfg traxanos
    ____________________
    Ist das neu?, Nein Linux!


    VDR1: Zotac NM10-ITX Wifi - 2GB Ram - S2-6400 HD mit IR - yavdr 0.4 (development) - LianLi PC-Q11


    Tags: VDR-HD - AT5IONT-I - 4GB Ram - 512MB ION - TT 3600 DVB-S2 - TT6400-FF - Sundtek DVB-S2 Sundtek DVB-C - Tevii S480 (dank an L4M für kostenlose Bereitstellung) - yaVDR 0.5 (development) - SKY - HD+ - Atric - X10 FB - Zotac ID41 PLUS - SilverStone LC19B-R - Yamaha RX-V671 - Samsung 8Series 55"


  • Also das ist schon mal das Liveplugin schuld das hatte ich sowieso schon in verdacht. Das lief ja noch nie wirklich. Schmeiße es nun raus und hoffe das es weniger segfaults werden.

    mfg traxanos
    ____________________
    Ist das neu?, Nein Linux!


    VDR1: Zotac NM10-ITX Wifi - 2GB Ram - S2-6400 HD mit IR - yavdr 0.4 (development) - LianLi PC-Q11


    Tags: VDR-HD - AT5IONT-I - 4GB Ram - 512MB ION - TT 3600 DVB-S2 - TT6400-FF - Sundtek DVB-S2 Sundtek DVB-C - Tevii S480 (dank an L4M für kostenlose Bereitstellung) - yaVDR 0.5 (development) - SKY - HD+ - Atric - X10 FB - Zotac ID41 PLUS - SilverStone LC19B-R - Yamaha RX-V671 - Samsung 8Series 55"

  • Pff, ach, mit diversen Plugins schmiert dir dein VDR ständig ab?
    Na, dann probiere doch erstmal den "vanilla" VDR - das wäre zumindest das, was ich dir als Entwickler sagen würde.


    Gruß,
    Juri


    PS: bei mir läuft VDR 1.6.0 mit ca. 10 Plugins stabil - kein Absturz bisher ( ~1 Monat intensive Nutzung)

  • Bin ja schon dabei :D Nur ein komplett Vanilla VDR ist unbrauchbar für mich. Ok die Abstürze auch^^ Ich bekomme jetzt wenigstens Coredumps.

    mfg traxanos
    ____________________
    Ist das neu?, Nein Linux!


    VDR1: Zotac NM10-ITX Wifi - 2GB Ram - S2-6400 HD mit IR - yavdr 0.4 (development) - LianLi PC-Q11


    Tags: VDR-HD - AT5IONT-I - 4GB Ram - 512MB ION - TT 3600 DVB-S2 - TT6400-FF - Sundtek DVB-S2 Sundtek DVB-C - Tevii S480 (dank an L4M für kostenlose Bereitstellung) - yaVDR 0.5 (development) - SKY - HD+ - Atric - X10 FB - Zotac ID41 PLUS - SilverStone LC19B-R - Yamaha RX-V671 - Samsung 8Series 55"

  • Zitat

    Original von FireFly
    bei mir läuft die 1.6.0-1 stabil und zuverlässig inkl. UTF8, habe aber auch alles selbst compiliert (unter opensuse 10.2/10.3).


    Hast Du zufällig auch unter den Plugins das ffnetdev und/oder statusleds Plugin? Mit diesen zwei Plugins habe ich beim Herunterfahren des VDR auch immer Segfaults (siehe Posting hier)?


    Wenn ja, wäre ich an den Sourcen/Downloadquellen interessiert - sonst muss ich wohl im Board nochmal fragen, ob das jemand stabil am laufen hat.


    Danke & Gruss
    Marcus

    My VDRs:

    Einmal editiert, zuletzt von dad401 ()

  • Zitat

    Original von dad401
    beim Herunterfahren des VDR auch immer Segfaults


    Probleme beim Beenden von vdr gibt (gab?) es auch mit pvrinput, wobei zumindest bei mir das Auskommentieren eines isyslog-Aufrus in vdr.c die Probleme beendet hat:
    debuggen: Kennt sich jemand mit GDB aus?


    Ich hab aber von einem user Rückmeldungen, dass er noch immer segmentation faults beim Beenden hat.

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    Einmal editiert, zuletzt von Dr. Seltsam ()

  • @thread titel
    ich glaub eher dass einige plugins noch probleme mit 1.6 haben
    bei mir "segfaulted" z.b das sleeptimer plugin
    ansonsten laeuft bei mir vdr 1.6 (etobi) unter debian etch wunderbar

  • ... ich habe die segfaults beim Beenden des VDR längst als "gegeben" hingenommen. Ich kann auch keine Probleme dadurch feststellen; der eine Logeintrag mehr macht den Kohl nun auch nicht fett.


    Gruß
    Holger

  • Zitat

    Original von dad401
    Hast Du zufällig auch unter den Plugins das ffnetdev und/oder statusleds Plugin?


    Nee, sorry, die benutze ich nicht.
    Habe aber auch schon Probleme mit graphlcd gehabt und musste da ne Variable auf NULL setzen (falls das bzw. den Patch jemand interessiert...)
    Wenn die Tage Zeit habe (und auch noch Lust dazu) versuche ich mal das statusled anzupassen und poste es dann ein deinem anderen Thread, ne Idee dazu habe ich schon, denn wie bei so viele Plugins werden selbst erzeugt Threads beim Beenden von VDR nicht gestoppt und dann kracht es halt beim Shutdown.


    FireFly
    PS: ich liebe Plugins, die nur aus einer Datei bestehen (zzgl. Übersetzung)

  • Zitat

    Original von FireFly
    wie bei so viele Plugins werden selbst erzeugt Threads beim Beenden von VDR nicht gestoppt und dann kracht es halt beim Shutdown.


    mag ja sein, dass einige Plugins Stop() nicht richtig implementiert haben und Threads nur über den Destructor beenden. So richtig deutlich finde ich die PLUGINS.html aber auch nicht: wann ist ein vom Plugin gestarteter Thread ein Hintergrund-Prozess?


    und warum lief das jahrelang mit vdr 1.4 problemlos?
    Was hat sich bei vdr 1.6 so gravierend verändert, und wo findet man eine Dokumentation, was konkret an den Plugns geändert werden muss?

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    Einmal editiert, zuletzt von Dr. Seltsam ()

  • Na, ich hatte das auch schon bei 1.4. Auf der anderen Seite: graphlcd ist da immer gelaufen, jetzt mit 1.6 musste ich plötzlich im Konstruktor ein Pointer mit NULL initialisieren (sollte man ja sowieso) weil es sonst abgestürzt ist.
    Evtl. ist die 1.6 da empfindlicher geworden? Oder die Rechner schneller bzw. haben mehr (>1) Kerne als früher und deshalb kommen die Probleme erst jetzt zum tragen? (Glaskugelmodus wieder aus :))


    Was auch oft passiert, ist dass zu schnelle beenden des VDR: erst ein kill -15 und nur 2-3 Sekunden danach ein kill -9, das langt aber gerade bei vielen geladenen Plugins nicht. Ich habe da jetzt einen Timeout von 12 Sekunden eingestellt und keine Probleme mehr (siehe killproc von suse).

  • Zitat

    Original von FireFly
    Habe aber auch schon Probleme mit graphlcd gehabt und musste da ne Variable auf NULL setzen (falls das bzw. den Patch jemand interessiert...)


    Ich bin schon etwas neugierig und würde gerne wissen welche Variable Du
    auf NULL setzen musstest. Welche Version des Plugins hast Du gepatched?
    Ich möchte gerne mit eigenen Augen sehen warum das hilft.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Komisch, das sollte eigentlich nur bis zum Start von

    Code
    bool cPluginGraphLCD::Initialize()


    eine Rolle spielen, dann wird mDisplay sowieso
    überschrieben.
    Ein Problem gibt es nur wenn aus irgendwelchen Gründen

    Code
    void cPluginGraphLCD::MainThreadHook() {     if (mDisplay)         mDisplay->Tick(); }

    vorher ausgeführt wird.
    Das sollte dann aber nicht erst beim Shutdown ein Problem sein.
    Oder wird

    Code
    void cPluginGraphLCD::MainThreadHook


    erst beim Shutdown ausgeführt? Vielleicht sehe ich mir das die nächsten
    Tage näher an.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • GraphLCD hat mir auch schon Abstürze verursacht. Ich verwende es daher nicht mehr. Hab jetzt mal ein GNU Debian/lenny mit den SID Paketen aufgesetzt bis jetzt sieht es noch gut aus. Aber leider werden keine coredumps mehr erzeugt wie unter ubuntu mit ulimit und einem cd nach /tmp.

    mfg traxanos
    ____________________
    Ist das neu?, Nein Linux!


    VDR1: Zotac NM10-ITX Wifi - 2GB Ram - S2-6400 HD mit IR - yavdr 0.4 (development) - LianLi PC-Q11


    Tags: VDR-HD - AT5IONT-I - 4GB Ram - 512MB ION - TT 3600 DVB-S2 - TT6400-FF - Sundtek DVB-S2 Sundtek DVB-C - Tevii S480 (dank an L4M für kostenlose Bereitstellung) - yaVDR 0.5 (development) - SKY - HD+ - Atric - X10 FB - Zotac ID41 PLUS - SilverStone LC19B-R - Yamaha RX-V671 - Samsung 8Series 55"

Jetzt mitmachen!

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