SSD hängt am falschen USB-Controller

Kontrapaganda

Lt. Junior Grade
Registriert
Dez. 2019
Beiträge
311
Ich hoffe, das hier ist das richtige Unterforum. Zumindest bis jetzt ist mein Eindruck, dass es kein spezielles Linux-Problem ist.
Mir war das früher auch schon ab und zu mal am Mac oder in Windows aufgefallen in Abwandlungen.

Ich habe ein ZBook Firefly 14 G10 A und betreibe es mit Kubuntu 23.10. Bis vor kurzem war ich auf einem Lenovo X1 Yoga gen 4 unterwegs. Davor auf einem Macbook Pro 9,2 (Unibody).
Heute habe ich mal wieder das tägliche Backup mit rsync gemacht — und mich sogleich gewundert, warum die SSD bei einer größeren Datei nur mit 38 MB/s schreibt. Die SSD ist eine PCIe 3.0 OEM von Lenovo etwa vier Jahre alt in einem USB-10GBit/s. Nicht nur ein niedriger Wert sondern insbesondere ein verdächtiger. Als das Backup dann fertig war also gleich mal ein Abbild mit dd angefangen zum Testen und sieh da: 43 MB/s lesend.

Also „lsusb -tv“ um einen Baum der USB-Geräte zu bekommen. Das Ergebnis hatte ich erwartet. Die SSD hängt am 480-MBit/s-Controller.
Code:
/:  Bus 08.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 10000M
    ID 1d6b:0003 Linux Foundation 3.0 root hub
/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    ID 1d6b:0002 Linux Foundation 2.0 root hub
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 10000M
    ID 1d6b:0003 Linux Foundation 3.0 root hub
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    ID 1d6b:0002 Linux Foundation 2.0 root hub
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 10000M
    ID 1d6b:0003 Linux Foundation 3.0 root hub
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    ID 1d6b:0002 Linux Foundation 2.0 root hub
    |__ Port 1: Dev 2, If 0, Class=Video, Driver=uvcvideo, 480M
        ID 04f2:b7a8 Chicony Electronics Co., Ltd
    |__ Port 1: Dev 2, If 1, Class=Video, Driver=uvcvideo, 480M
        ID 04f2:b7a8 Chicony Electronics Co., Ltd
    |__ Port 1: Dev 2, If 2, Class=Video, Driver=uvcvideo, 480M
        ID 04f2:b7a8 Chicony Electronics Co., Ltd
    |__ Port 1: Dev 2, If 3, Class=Video, Driver=uvcvideo, 480M
        ID 04f2:b7a8 Chicony Electronics Co., Ltd
    |__ Port 1: Dev 2, If 4, Class=Application Specific Interface, Driver=, 480M
        ID 04f2:b7a8 Chicony Electronics Co., Ltd
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M
    ID 1d6b:0003 Linux Foundation 3.0 root hub
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/5p, 480M
    ID 1d6b:0002 Linux Foundation 2.0 root hub
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        ID 214b:7250 Huasheng Electronics
        |__ Port 4: Dev 15, If 0, Class=Human Interface Device, Driver=usbhid, 12M
            ID 17ef:6047 Lenovo ThinkPad Compact Keyboard with TrackPoint
        |__ Port 4: Dev 15, If 1, Class=Human Interface Device, Driver=usbhid, 12M
            ID 17ef:6047 Lenovo ThinkPad Compact Keyboard with TrackPoint
    |__ Port 2: Dev 20, If 0, Class=Mass Storage, Driver=uas, 480M
        ID 152d:0580 JMicron Technology Corp. / JMicron USA Technology Corp.
    |__ Port 3: Dev 3, If 0, Class=Wireless, Driver=btusb, 480M
        ID 0489:e0f2 Foxconn / Hon Hai
    |__ Port 3: Dev 3, If 1, Class=Wireless, Driver=btusb, 480M
        ID 0489:e0f2 Foxconn / Hon Hai
    |__ Port 3: Dev 3, If 2, Class=Wireless, Driver=, 480M
        ID 0489:e0f2 Foxconn / Hon Hai
    |__ Port 4: Dev 5, If 0, Class=Vendor Specific Class, Driver=, 12M
        ID 06cb:00f0 Synaptics, Inc.


Die SSD steckte derweil im rechten Port des ZBooks. Interessant ist, dass auch mein Hub am 480M-Controller hängt, obwohl der ebenfalls USB 3.0 beherrscht und auch schon in der Praxis gezeigt hat, dass er wirklich kann.
Nun passiert mir das, wie gesagt nicht zum ersten Mal. Lediglich zum ersten Mal mit dieser SSD. Ich habe hier gerade noch mal einen normalen USB-3.0 Stick von dm in den physisch gleichen rechten Port gesteckt und der hing an einem der oben gelisteten 10G-Controller. Ein an der Mal war es umgekehrt; d.h. der USB-Stick hängt sich an den 480M-Controller und die SSD am 10G-Corntroller. Das war wohl noch am Thinkpad. An den USB-C-Ports läuft übrigens alles (mit Adapter) problemlos.

Ein anders ähnliches Phänomen. Bestimmt kennen einige von euch die alten kabelgebundenen Apple-Tastaturen. Diese hatte die Eigenschaft sporaidcsh an manchen Rechner einfach nicht erkannt zu werden. Die wurden dann auch im Gerätebaum nicht erkannt. Das galt für Macs, PCs unter macOS, Windows 7/10 oder Linux aber auch direkt im UEFI/BIOS also pre-OS. Alles egal. Am nächsten Rechner hat's dann funktioniert, oder auch nicht, oder am nächsten Tag nicht mehr oder doch wieder. Meistens half es, das Verlängerungskabel dazwischen zu schalten oder zei inverse USB-C/A-Adapter oder 4 oder einen bestimmten USB-Hub. Aber auch nicht immer. Völlig willkürlich.

Ich spreche hier nicht von einem einzigen „Montagsgerät“. Wir hatten zwischenzeitlich 4 von den Teilen im Haushalt. Alle mit der gleichen Macke.


Was ist, dass USB-geräte so unzuverlässig macht? Kann man da irgendwas machen?

EDIT: Nach mehrmaligem Ab- und Anstöpseln hängt auch die SSD jetzt schön brav am 10G-Controller. Ob das beim nächsten Male wieder so ist... ?
 
Zuletzt bearbeitet:
Sicher, dass nichts eins der Kabel einen Wackelkontakt hat? Klingt, als ob da 1-2 Pins gelegentlich keinen Kontakt haben
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: KillerCow
Benutzt Du einen Adapter USB-C auf USB-A für die SSD? Wenn ja, dreh mal den USB-C Stecker um 180°
 
  • Gefällt mir
Reaktionen: Nero FX, KillerCow und madmax2010
Kontrapaganda schrieb:
EDIT: Nach mehrmaligem Ab- und Anstöpseln hängt auch die SSD jetzt schön brav am 10G-Controller. Ob das beim nächsten Male wieder so ist... ?
Ich zitiere mich mal selbst aus nem anderen Beitrag:
Chuuei schrieb:
Beim nachträglich stecken, immer drauf achten zügig zu stecken. Die USB3 Leitungen sind hinter den USB2 Leitungen im Stecker und wenn man langsam steckt, einigen sich Host und Device schon auf USB2 bevor die USB3 Leitungen verbunden sind und dann bleibts auch dabei.

Passt voll in dein Fehlerbild. Zum Verifizieren, einfach mal mit den angeschlossenen Devices booten. Sollte dann immer als USB3 hochkommen.
 
  • Gefällt mir
Reaktionen: phm666, Nero FX und kaji-kun
Pete11 schrieb:
Benutzt Du einen Adapter USB-C auf USB-A für die SSD? Wenn ja, dreh mal den USB-C Stecker um 180°
Nein. Die SSD steckte im nativen A-Port. Die aktuellen Elitebooks/ZBooks in 14 Zoll ebenso wie das Thinkpad haben rechts nur einen A-Port und links C-Ports und A-Ports.
Dann im C-Port mit Adapter hats geklappt und jetzt wie gesagt auch.
Chuuei schrieb:
Passt voll in dein Fehlerbild. Zum Verifizieren, einfach mal mit den angeschlossenen Devices booten. Sollte dann immer als USB3 hochkommen.

Beim ZBook kommt hinzu, dass die A-Ports sehr sehr eng sind. Man muss das ZBook quasi immer festhalten, wenn man was rein- oder rausstecken will. Schnell ist da nicht so einfach. Sonst schiebt man den Laptop über den Tisch :)
Dem entgegen steht allerdings die Beobachtung, dass mein Hub eigentlich beim Booten meistens (wie auch heute) schon steckt. Grund ist dass das Stecken am Zbook ziemlich anstrengend im wahrsten Sinne des Wortes ist. Gerade weil auch noch HDMI-Kabel und Netzkabel daneben stecken, bekommt man den USB-Stecker kaum zu fassen ohne nicht die anderen Sachen auch alle rauszunehmen. Deswegen lasse ich das alles drin, wenn ich den Laptop nicht gerade mitnehme.
 
Ergänzung ()

Pete11 schrieb:
Warum steckst Du die SSD nicht am Hub an?
Weil der statistisch gesehen ganz besonders anfällig dafür ist, an 480M-Controllern zu hängen selbst wenn er beim Boot schon dran ist.
Beim Hub hatte ich das eine Zeit lang darauf geschoben, dass das „halt ein billiges China-Teil“ ist.
 
Zurück
Oben