Abo
  • Services:
Anzeige
Ein Fehler im USB-Stack des Linux-Kernels führt zu Verbindungsabbrüchen. Er wird behoben.
Ein Fehler im USB-Stack des Linux-Kernels führt zu Verbindungsabbrüchen. Er wird behoben. (Bild: Elina Warkentin, CC-BY 2.5)

Linux-Kernel Probleme im USB-Stack entdeckt

Wegen einer fehlerhaften Abstimmung zwischen Hardware und dem USB-Stack in der Energieverwaltung des Linux-Kernels werden Verbindungen zu USB-Geräten häufig unterbrochen. Bislang sahen die Kernel-Entwickler die Schuld bei den Geräteherstellern.

Anzeige

Die Kernel-Hackerin Sarah Sharp hat einen schwerwiegenden Fehler im Linux-Kernel entdeckt. Demnach ist eine fehlerhafte Abstimmung zwischen USB-Stack und Geräten beim Verlassen des Schlafmodus dafür verantwortlich, dass die Verbindung zu USB-Geräten unvermittelt gekappt wird, wenn Auto-Suspend aktiviert ist. Ein Patch ist bereits in Arbeit.

Das Problem wahlloser Abbrüche von Verbindungen zu USB-Geräten sei ihr und anderen Kernel-Hackern seit Jahren bekannt, schreibt Sharp. Allerdings hätten sie die Schuld bei "billigen, beschissenen und kaputten" Geräten gesucht, also bei den Herstellern. Die von den Kernel-Entwicklern dafür erstellten Blacklisten seien irgendwann zu groß geworden. Die später von den einzelnen Distributionen erstellten Whitelisten seien ungenügend gepflegt worden und letztendlich zu aufwendig.

Timing-Probleme

Nun stellte sich laut Sharp heraus, dass nicht immer die Geräte selbst für die Unterbrechungen verantwortlich waren. Laut USB-Spezifikationen muss der Roothub das Signal zum Aufwecken eines Geräts (TDRSMDN) mindestens 20 Millisekunden lang senden. Danach wird der Status eines Geräts im Hub auf Aktiv gesetzt. Bis der Linux-Kernel und Software auf ein Gerät zugreifen dürfen, muss allerdings noch eine Pause von 10 Millisekunden erfolgen (TRSMRCY). Der TRSMRCY-Wert ist laut USB-2.0-Spezifikationen allerdings weder ein Festwert noch ein Maximalwert, sondern ein Minimalwert.

Der xHCI-Treiber des Linux-Kernels aktiviert zwar sofort den Kernel-Hub-Daemon (khubd), gibt den veränderten Status eines Geräts allerdings erst nach 20 Millisekunden frei (TDRSMDN). Das bedeute, dass ein Gerät länger in einem Resume-Modus sein kann als die in TRSMRCY festgelegte Zeit. Die Software versucht dann nach 10 Millisekunden auf das Gerät zuzugreifen, obwohl es sich noch im Schlafmodus befindet, was wiederum dazu führen kann, dass das USB-Gerät abgehängt wird oder beispielsweise Schreibzugriffe nicht erfolgen können.

Der Fehler betrifft Geräte, die am xHCI-Hub stecken. Derartige Probleme mit dem EHCI-Hub und dem USB-Stack des Linux-Kernels gibt es nicht.

Nach Sharps ersten Analysen haben einige USB-Geräte eine TRSMRCY-Zeit von bis zu 17 Millisekunden. Bei 8 Prozent der getesteten Geräte liegen TRSMRCY-Werte bei über 10 Millisekunden. Einen ersten Patch habe Sharp schon eingereicht. Der sei aber noch kein "echter Fix". Ab sofort arbeite sie an einem besseren Patch. Sie sehe aber "Licht am Ende des Tunnels" und dass die Probleme mit der USB-Energieverwaltung im Linux-Kernel bald gelöst sein würden. Läuft alles nach Plan, dürften die Reparaturen bereits im nächsten Kernel 3.11 einfließen, der Anfang September 2013 erscheinen soll.


eye home zur Startseite
Anonymer Nutzer 25. Aug 2013

man sich so noch mehr in Probleme bezüglich Abwärtskompatibilität verstrickt.

Ama 25. Aug 2013

Findest du es nicht etwas anmaßend, nur aus Worten darauf zu schließen, wer wie wo für...

Thaodan 25. Aug 2013

ich würde eher eine passende udev Regel anlegen, sollte sauberer sein.

tingelchen 24. Aug 2013

Die Stecker sind auch recht robust :) Ich habe das gleiche Problem bei meinem aktiven...

Schiwi 24. Aug 2013

So lange du keinen expliziten Supportvertrag hast, bist du auch für MS kein direkter...



Anzeige

Stellenmarkt
  1. HEKUMA GmbH, Hallbergmoos
  2. DuPont Sustainable Solutions (DSS), Neu-Isenburg
  3. Zühlke Engineering GmbH, München, Hannover, Eschborn
  4. Landeshauptstadt Stuttgart, Stuttgart


Anzeige
Hardware-Angebote
  1. ASUS-Gaming-Produkt kaufen und bis zu 150€ Cashback erhalten
  2. und 20€ Steam-Guthaben abstauben

Folgen Sie uns
       


  1. Zahlungsverkehr

    Das Bankkonto wird offener

  2. 20.000 neue Jobs

    Apple holt Auslandsmilliarden zurück und baut neuen Campus

  3. Auto-Entertainment

    Carplay im BMW nur als Abo zu bekommen

  4. Fehlende Infrastruktur

    Große Skepsis bei Elektroautos als Dienstwagen

  5. Tim Cook

    Apple macht die iPhone-Drosselung abschaltbar

  6. Nintendo Labo

    Switch plus Pappe

  7. Apple

    Messages-App kann mit Nachricht zum Absturz gebracht werden

  8. Analog

    Kabelnetzkunden in falscher Sorge wegen DVB-T-Abschaltung

  9. Partnerprogramm

    Geld verdienen auf Youtube wird schwieriger

  10. Nur beratendes Gremium

    Bundestag setzt wieder Digitalausschuss ein



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Vorschau Kinofilme 2018: Lara, Han und Player One
Vorschau Kinofilme 2018
Lara, Han und Player One
  1. Kinofilme 2017 Rückkehr der Replikanten und Triumph der Nasa-Frauen
  2. Star Wars - Die letzten Jedi Viel Luke und zu viel Unfug

EU-Netzpolitik: Mit vollen Hosen in die App-ocalypse
EU-Netzpolitik
Mit vollen Hosen in die App-ocalypse

Preiswertes Grafik-Dock ausprobiert: Ein eGPU-Biest für unter 50 Euro
Preiswertes Grafik-Dock ausprobiert
Ein eGPU-Biest für unter 50 Euro
  1. XG Station Pro Asus' zweite eGPU-Box ist schlicht
  2. Zotac Amp Box (Mini) TB3-Gehäuse eignen sich für eGPUs oder SSDs
  3. Snpr External Graphics Enclosure KFA2s Grafikbox samt Geforce GTX 1060 kostet 500 Euro

  1. Re: Was ist das Problem am Urheberrecht?

    SJ | 09:03

  2. Re: IMHO: Der falsche Weg

    SJ | 09:02

  3. Re: Einziger Hersteller Moto Z hat exakt das...

    Techn | 09:02

  4. Re: Das finde ich schon frech

    Old Fly | 09:01

  5. Re: Kein Backup? Kein Mitleid!

    Der Held vom... | 09:01


  1. 09:04

  2. 08:26

  3. 08:11

  4. 07:55

  5. 07:30

  6. 00:02

  7. 19:25

  8. 19:18


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel