vdr & pidstat

  • Hi,


    am Wochenende war mir aufgefallen das irgendein Prozess permanent auf eine meiner Platten zugreift. Dem ging ich auf die Spur und fand heraus, dass vdr im normalen LiveTV-Modus permanent auf die Platte schreibt.


    Dies lässt sich wunderbar mit dem Befehl pidstat nachvollziehen:


    pidstat -d 2

    listet alle 2 Sekunden auf welche Prozesse von Platte lesen oder auf Platte scheiben wollen.
    Und hier ist bei mir der vdr-Prozess der einzige, der permanent was schreiben möchte.
    Im Schnitt so 80-90 kb/s - und es läuft keine Aufnahme!


    So nun wirds merkwürdig...


    Sobald ich eine Aufnahme abspiele und diese dann wieder beende und wieder im LiveTV-Modus bin, bleibt die Plattenaktivität des vdr bei null. Schalte ich aber nun auf einen anderen Kanal fängt er wieder an permanent 80-90 kb/s zu schreiben.


    Den LiveBuffer - Patch habe ich nicht!


    Hier meine VDR-Konfig:
    Das System ist Debian 5.0 (Kernel 2.6.28)


    vdr (1.7.4/1.7.4) - The Video Disk Recorder
    muggle (0.2.2) - Media juggle plugin for VDR
    director (0.2.8) - plugin to use the premiere multifeed option
    femon (1.7.1) - DVB Signal Information Monitor (OSD)
    fritzbox (1.1.2) - Fritz!Box Plugin for AVM Fritz!Box
    pictures (0.0.7) - A simple picture viewer
    premiereepg (0.2.0) - Parses extended Premiere EPG data
    quickepgsearch (0.0.1) - Quick search for broadcasts
    cpumon (0.0.6) - CPU Monitor
    osdteletext (0.8.1) - Displays teletext on the OSD
    sportng (0.0.3) - Zeigt Sportergebnisse auf dem OSD
    avards (0.1.5) - Automatic Video Aspect Ratio Detection and Signaling Plugin
    remote (0.4.0) - Remote control
    osdserver (0.1.2) - Server for remote OSD clients
    menuorg (0.4.4) - Reorganizes the main menu
    tvm2vdr (0.0.2) - Tvm2vdr EPG-Data from tvmovie
    epgsearch (0.9.25.beta6) - search the EPG for repeats and more
    dvd (0.3.6-b03) - turn VDR into an (almost) full featured DVD player
    systeminfo (0.1.1) - Display various system informations
    skinenigmang (0.1.0pre) - EnigmaNG skin
    streamdev-client (0.5.0-pre) - VTP Streaming Client
    control (0.0.2a-kw3) - Control VDR over terminal or telnet
    epgsearchonly (0.0.1) - Direct access to epgsearch's search menu
    hello (0.2.3) - A friendly greeting
    streamdev-server (0.5.0-pre) - VDR Streaming Server
    devstatus (0.4.0) - Status of dvb devices
    ** (0.9.1-HG-7b1d1848d17c+)
    conflictcheckonly (0.0.1) - Direct access to epgsearch's conflict check menu
    live (0.2.0) - Live Interactive VDR Environment


    free -m zeigt an:
    total used free shared buffers cached
    Mem: 472 408 63 0 226 109
    -/+ buffers/cache: 72 399
    Swap: 258 0 258


    Hat jemand eine Idee - bzw. kann das an seinem System nachvollziehen?


    Marcel

    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • Moin,


    tja, welche Dateien werden denn geschrieben? Mach mal

    Code
    1. lsof | grep -i vdr

    Am besten ein Diff zwischen Plattendauerschreiben / Nichtschreiben.


    EPG-Plugins und OSDTeletext könnten bei Programmwechsel schreiben; sollten aber nach kurzer Zeit fertigsein.


    Gruss,
    Walter

    --seit 2010 kein vdr mehr in Betrieb--
    vdr 1.6.0 + eigene Patchkombination
    GNU/Linux 2.6.23.14 (Debian)
    DVB-S-Karte TT 1.6 (FF, Tuner defekt)
    DVB-S-Karte TT Budget (seit 4/09)
    DVB-T-Karte TT 1300
    DVB-T-USB-StickTerratec Cinergy T USB XE Rev. 2
    PC-Hauptplatine: MSI K8N Neo4-F, AMD 64 (seit 1/07)

  • Hi,


    auf die Idee den Befehl lsof mal zu verwenden hätte ich auch kommen sollen. Werde ich nachher mal machen, z.Z. nehme ich auf.


    Marcel

    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • hier mal der output von

    Code
    1. pidstat -d 2



    als nächstes habe ich

    Code
    1. lsof -p 17899


    ausgeführt und in eine Datei geschrieben - ein paar sec. gewartet und selbiges nochmal.


    hier mein diff über beide Dateien:


    Auch ein lsof ohne PID Angabe bringt keine großen Erkenntnisse.


    Marcel

    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • Hilft nicht. Mach mal lsof | grep -i vdr (und ohne diff)


    Gruss,
    Walter

    --seit 2010 kein vdr mehr in Betrieb--
    vdr 1.6.0 + eigene Patchkombination
    GNU/Linux 2.6.23.14 (Debian)
    DVB-S-Karte TT 1.6 (FF, Tuner defekt)
    DVB-S-Karte TT Budget (seit 4/09)
    DVB-T-Karte TT 1300
    DVB-T-USB-StickTerratec Cinergy T USB XE Rev. 2
    PC-Hauptplatine: MSI K8N Neo4-F, AMD 64 (seit 1/07)

  • Hi,


    hier sind 3 lsof Abfragen mit jeweils 10 sec. Pause dazwischen.


    Marcel

    Files

    • lsof.tar.bz2

      (5.08 kB, downloaded 125 times, last: )
    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • Moin,


    das einzige was schreibbar ist und wo sich die Größe teilweise ändert ist /var/spool/cron/atspool/a0004b013a7de5


    Allerdings erklärt das nicht die 100 kByte/s.


    OK, ich rate mal (nicht böse sein)


    * Irgendein Treiber oder vdr mit DEBUG fffffffff compiliert/gestartet und der schreibt nun das Syslog voll -> Schau Dir mal /var/log/* an


    * Du hast anscheinend den Extensionpatch drin (vermute ich mal wg. Pfad vdr-1.7.4_ext_67). Kann es nicht doch sein, daß der Livebuffer aktiviert ist? Dagegen spricht natürlich, daß nirgends eine index.vdr zum schreiben offen ist


    * Ansonsten muß Du mal strace (mitschreiben aller C-Lib-Aufrufe) bemühen: statt "vdr ..." aufzurufen ruft man "strace vdr ... 2>strace.log" auf. vdr eine Weile laufen lassen (vdr wird dadurch gut lahm) und beenden. Und dann strace.log auswerten (z.B. nach "Write(" suchen). Das ist allerdings knifflig, weil man nicht weiss was man sucht ...


    Sonst weiß ich auch nicht weiter.


    Gruss,
    Walter

    --seit 2010 kein vdr mehr in Betrieb--
    vdr 1.6.0 + eigene Patchkombination
    GNU/Linux 2.6.23.14 (Debian)
    DVB-S-Karte TT 1.6 (FF, Tuner defekt)
    DVB-S-Karte TT Budget (seit 4/09)
    DVB-T-Karte TT 1300
    DVB-T-USB-StickTerratec Cinergy T USB XE Rev. 2
    PC-Hauptplatine: MSI K8N Neo4-F, AMD 64 (seit 1/07)

  • Hi,


    mit raten habe ich keine Probleme :-)


    Quote


    das einzige was schreibbar ist und wo sich die Größe teilweise ändert ist /var/spool/cron/atspool/a0004b013a7de5


    Habe zu letzt vdr mit at now gestartet....
    Hier schreibt z.Z. nur sportng Plugin alle paar Minuten was rein. Genau 10 Zeilen - und das sind Meldungen von tar wg. Zeitstempel.


    Quote


    * Irgendein Treiber oder vdr mit DEBUG fffffffff compiliert/gestartet und der schreibt nun das Syslog voll -> Schau Dir mal /var/log/* an


    vdr ist nicht mit DEBUG compiliert/gestartet. Die Idee mit den Logfiles hatte ich auch schon. Hier wird nur alle 1. Minute eine Zeile geschrieben - wegen einem Cronjob - der bei mir läuft. Dieser Cronjob kann's auch nicht sein. Weil hier nix geschrieben wird.


    Quote


    * Du hast anscheinend den Extensionpatch drin (vermute ich mal wg. Pfad vdr-1.7.4_ext_67). Kann es nicht doch sein, daß der Livebuffer aktiviert ist? Dagegen spricht natürlich, daß nirgends eine index.vdr zum schreiben offen ist


    Hier meine Patches....


    Quote


    * Ansonsten muß Du mal strace (mitschreiben aller C-Lib-Aufrufe) bemühen: statt "vdr ..." aufzurufen ruft man "strace vdr ... 2>strace.log" auf. vdr eine Weile laufen lassen (vdr wird dadurch gut lahm) und beenden. Und dann strace.log auswerten (z.B. nach "Write(" suchen). Das ist allerdings knifflig, weil man nicht weiss was man sucht ...


    Das werd ich dann wohl mal probieren. Zudem werde ich heute mal alle Plugins einzeln durchgehen. Vielleicht ist es ja doch ein Plugin.


    Danke und Gruß
    Marcel

    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • Hi,


    mittlerweile konnte ich den Übeltäter ausmachen. Es ist das osdteletext Plugin.
    Als nächstes werde ich das Plugin bei einem vdr ohne Patch probieren.
    Die Version des Plugins ist 0.8.1.


    Marcel

    Quote

    BOARD: Biostar Viotech 3100+
    CPU: VIA C7-D 1.6+ GHz (onboard) - SYSTEM DISK: 8GB (half slim SSD) - DATA DISK: 2 TB
    RAM: 1 GB
    OS: Debian 7.2 - KERNEL: 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
    VDR: 2.0.4
    DVB: Mystique SaTiX-S2 Dual (v2)

  • Moin mhanu,


    danke für die Rückmeldung. OSDTeletext 0.8.1 habe ich hier auch am Laufen. Mit diesem und auch seinen Vorgängern hatte ich aber nie Vollast ...


    Gruss,
    Walter

    --seit 2010 kein vdr mehr in Betrieb--
    vdr 1.6.0 + eigene Patchkombination
    GNU/Linux 2.6.23.14 (Debian)
    DVB-S-Karte TT 1.6 (FF, Tuner defekt)
    DVB-S-Karte TT Budget (seit 4/09)
    DVB-T-Karte TT 1300
    DVB-T-USB-StickTerratec Cinergy T USB XE Rev. 2
    PC-Hauptplatine: MSI K8N Neo4-F, AMD 64 (seit 1/07)