[Gelöst] TT S-1401: timed out waiting for end of xfer (Kernel 2.6.24)

  • Hallo,


    ich verwende eine TT S-1401 Budget-Karte mit c'tVDR6.1 und selbstgebasteltem Kernel 2.6.24. Ich habe Bild und Ton, aber im Logfile steht immer was von:


    saa7146_i2c_writeout [irq]: timed out waiting for end of xfer


    Ausserdem erzeugt der saa7146 meiner Meinung nach Interrupts wie verrückt.


    Ist obige Meldung nun ein Problem?


    Das :suche hier brachte mir nur die Erkenntnis, das die S-1401 ab einer bestimmten Kernel-Version (>2.6.20?) funktionieren solle, mehr aber nicht...


    Gruß


    Joe_D

  • Zitat

    Original von dbrenken
    Hi,
    das Problem ist als Regression von 2.6.24 bekannt und bereits in folgendem Repository gefixt:


    http://linuxtv.org/hg/~hhackmann/v4l-dvb/ (changeset 7183)


    Das i2c-Problem hat nichts mit dem Patch zu tun. Es scheint so, daß bei bestimmten Karten die Interrupts beim I2C-Transfer nicht richtig ausgelöst werden. Eigentlich ist nicht klar, ob nur die I2C-Interrupts betroffen sind. Es ist auch nicht klar, ob eine bestimmte Hardwarekonfiguration (shared Interrupts) das Problem auslöst. Man könnte den Transfer zurück auf Polling stellen. Man muß dann Teile von diesem Changset rückgängig machen.


    Gruß
    e9hack

  • Zitat

    Original von e9hack
    Man muß dann Teile von diesem Changset rückgängig machen.


    das hatte bei mir (Probleme mit einer FuSi DVB-C FF) nichts gebracht.
    Der Durchbruch kam, als ich noirqbalance als Kerneloption übergeben habe. (Eine gezielte smp_affinity für den IRQ der Karte hat nicht nachhaltig geholfen, es dauerte nur länger bis der Fehler auftrat)
    nosmp bzw. ein Kernel ohne SMP-Unterstützung brachte ebenfalls fehelrfreien Betrieb.

    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

  • Mal ne blöde Frage, muss man jetzt bei dem neusten DiSEqC Patch von Hartmut Hackmann einen Parameter beim laden der Module übergeben um die Änderungen zu aktivieren, oder läuft alles wie gewohnt?


    Habe wie dbrenken Probleme mit der S-1401 in einem xineliboutput System und es ist wie bei glasbaustein kernel 2.6.22.


    Gruß
    tec

  • Zitat

    Originally posted by glasbaustein
    Also ich habe genau die gleichen Meldungen auch mit der Kernelversion 2.6.22.


    die Meldungen sehe ich auch schon seit Monaten:)


    Mit 'linux-image-2.6.22-3-k7' aus 'www.backports.org'


    Witzigerweise konnte ich aber noch keine offensichtlichen Auswirkungen erkennen, obwohl die betroffene Kiste
    staendig im Einsatz ist. Darum habe ich mich noch nicht weiter um diese Baustelle gekuemmert.

  • Bei mir kommt die Meldung mit einer Haupauge Nova und einem selbstgebackenem 2.6.23. auf k7 Basis und hg treuibern. Seit neuestem mit einem 2.6.24-486
    Ausser einer vollgemüllten dmesg keine erkennbaren Auswirkungen.
    gruss
    heiko

  • Zitat

    Original von Dr. Seltsam


    das hatte bei mir (Probleme mit einer FuSi DVB-C FF) nichts gebracht.


    Wenn Du den I2C-Transfer auf Polling umstellst, kannst Du aber keine solche Fehlermeldung mehr erhalten haben:
    saa7146_i2c_writeout [irq]: timed out waiting for end of xfer


    Gruß
    e9hack

  • Zitat

    Original von e9hack
    Wenn Du den I2C-Transfer auf Polling umstellst, kannst Du aber keine solche Fehlermeldung mehr erhalten haben:
    saa7146_i2c_writeout [irq]: timed out waiting for end of xfer


    hast recht, die Meldung war weg. Änderte aber nichts an regelmäßigen Crashes

    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

  • Hallo,


    jetzt habe ich nochmal ins syslog geschaut und folgendes vorgefunden:



    Eine Empfangsstörung liegt nicht vor, da femon keine BERs anzeigt und STR/SNR bei 80%/90% liegen. Bis dann irgendwann beim zappen ein "frontend lost lock" kommt. Da ich ein Monoblock LNB habe, hoffe ich, dass der DiSEqC Patch bei diesem Problem Abhilfe schafft.


    Mir ist aber unklar, ob die dauernden Ton- und Bildaussetzer, die ca. 1-2 mal pro Minute kommen damit was zu tun haben.



    Hat jemand einen Tipp?



    Gruß
    tec


  • Dies ist ein ganz anderer Fehler!


    Offenbar ist die Maschine nicht in der Lage, die Interrupts vom saa7146 schnell genug zu bearbeiten. Daher läuft der DMA-Buffer über, und es kommt zu den Aussetzern... (Iirc hatten wir das auf der ML schon mal in Verbindung mit SATA-Platten.)


    Wahrscheinlich hilft es, budget-core mit Parameter "bufsize=1410" zu laden.


    Was habt ihr alle nur für merkwürdige Hardware? :D :schiel


    CU
    Oliver

  • Hab es jetzt mal mit der option "bufsize=1410" probiert und es hat ein wenig geholfen. Die Tonaussetzer scheinen erstmal weg zu sein, was man auch im log sehen kann, da keine bytes mehr verworfen werden um zu synchronisieren.


    Trotzdem scheint die buffer Nutzung ziemlich hoch zu sein, was sich jetzt aber etwas anders als zuvor im log bemerkbar macht.


    Das System hat auch eine SATA Platte und das Mainboard ist ein GA-P35-DS3L. Würde es evtl. helfen wenn man dieses hier wieder rückgängig macht?


    Den Beitrag in der linux-dvb ML habe ich jetzt auch gefunden.
    In der aktuellen kernel config habe ich gerade gesehen, dass CONFIG_HZ auf 250 steht. Bringt es was, wenn ich das auf 1000Hz stelle?


    Da wurde auch außerdem eine nvidia Karte als mögliche Fehlerquelle erwähnt. Hier läuft ebenfalls eine Nvidia 7600GS mit dem proprietären nvidia Treiber (169.07).


    Die Budget DVB Karte macht auch mit keinem anderen Gerät IRQ sharing.
    Bei dem System handelt es sich um ein Ubuntu 7.10 64bit mit einer Q6600 CPU und dem oben genannten Mainboard.


    Langsam gehen mir die Ideen aus und ich kann mir irgendwie garnicht vorstellen, dass irgend ein anderes physisches Gerät für diese buffer underruns verantwortlich sein soll.


    Gruß
    tec

    Einmal editiert, zuletzt von tecfreak ()

  • Zitat

    Original von tecfreak
    Hab es jetzt mal mit der option "bufsize=1410" probiert und es hat ein wenig geholfen. Die Tonaussetzer scheinen erstmal weg zu sein, was man auch im log sehen kann, da keine bytes mehr verworfen werden um zu synchronisieren.


    Trotzdem scheint die buffer Nutzung ziemlich hoch zu sein, was sich jetzt aber etwas anders als zuvor im log bemerkbar macht.

    Code
    ...
    Feb 15 00:03:37 PABLO vdr: [6649] buffer usage: 70% (tid=6648)
    Feb 15 00:03:39 PABLO vdr: [6649] buffer usage: 80% (tid=6648)
    Feb 15 00:03:40 PABLO vdr: [6649] buffer usage: 90% (tid=6648)
    Feb 15 00:03:40 PABLO vdr: [6648] clearing transfer buffer to avoid overflows
    Feb 15 00:03:40 PABLO vdr: [6649] buffer usage: 0% (tid=6648)


    Diese Meldung kommt von VDR, nicht vom Treiber. Sie bedeutet letztendlich, daß die Daten schneller hereinkommen als VDR sie loswerden kann.


    Falls Fehler nur bei Aufnahme auftritt:
    Festplattendurchsatz prüfen ("hdparm -tT /dev/...").


    Andernfalls hängt es wohl an der Ausgabe über die Grafikkarte.


    Zitat


    Das System hat auch eine SATA Platte und das Mainboard ist ein GA-P35-DS3L. Würde es evtl. helfen wenn man dieses hier wieder rückgängig macht?


    Kannst Du versuchen, imho jedoch eher nicht.


    Zitat


    Den Beitrag in der linux-dvb ML habe ich jetzt auch gefunden.
    In der aktuellen kernel config habe ich gerade gesehen, dass CONFIG_HZ auf 250 steht. Bringt es was, wenn ich das auf 1000Hz stelle?


    Unwahrscheinlich.


    Zitat


    Da wurde auch außerdem eine nvidia Karte als mögliche Fehlerquelle erwähnt. Hier läuft ebenfalls eine Nvidia 7600GS mit dem proprietären nvidia Treiber (169.07).


    Tja...


    Zitat


    Die Budget DVB Karte macht auch mit keinem anderen Gerät IRQ sharing.
    Bei dem System handelt es sich um ein Ubuntu 7.10 64bit mit einer Q6600 CPU und dem oben genannten Mainboard.


    Huh - Jetzt werden schon VDRs mit Quadcore gebaut... :schiel
    Ändert sich was, wenn Du den Kernel mal mit "nosmp" startest?


    Zitat


    Langsam gehen mir die Ideen aus und ich kann mir irgendwie garnicht vorstellen, dass irgend ein anderes physisches Gerät für diese buffer underruns verantwortlich sein soll.


    Ein einziger Fehler an einer ungünstigen Stelle kann das ganze System ausbremsen.


    CU
    Oliver


  • Wie wird eigentlich die Bildsynchronisation beim Softdevice gemacht? Der MPEG-Datenstrom hat ja bei der Bildwiederhohlrate einen gewissen Jitter. Theoredisch könnte die Wiederholrate auch geringfügig unter bzw. über dem Nominalwert liegen. Bei FF-Karten wird da ja am Clock gedreht um Decoder und Wiederholrate synchron zu halten.


    Gruß
    e9hack

  • Zitat

    Original von e9hack


    Wie wird eigentlich die Bildsynchronisation beim Softdevice gemacht? Der MPEG-Datenstrom hat ja bei der Bildwiederhohlrate einen gewissen Jitter. Theoredisch könnte die Wiederholrate auch geringfügig unter bzw. über dem Nominalwert liegen. Bei FF-Karten wird da ja am Clock gedreht um Decoder und Wiederholrate synchron zu halten.


    Gute Frage! Daran könnte es natürlich auch liegen.


    CU
    Oliver

  • @dbrenken


    Vielen Dank für den Tipp, damit hat es nun geklappt! Warum das so ist, keine Ahnung aber seit ich diese Treiberversion verwende funktioniert nun alles.


    Die Meldung kommt zwar immer noch aber nur wenn ich auf einem Kanal keinen Empfang habe (bzw. das SAT-Kabel ausgesteckt ist).


    Gruß


    Joe_D

Jetzt mitmachen!

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