• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

11.4: USB3.0 geht nur noch teilweise

Hallo zusammen,

ich vermute, nach dem letzten Kernel-Update geht USB3.0 nur noch teilweise.
Da gab's aber mehrere Ereignisse, die zusammen trafen.
3.0-Stick zu früh beim schreiben rausgezogen.
Virtualbox von 4.1.20 auf 4.1.22 aktualisiert.
Ich glaube eher, es war das Kernel-Update.
Linux linux 2.6.37.6-24-default #1 SMP 2012-10-18 22:36:08 +0200 x86_64 x86_64 x86_64 GNU/Linux

Die Sticks(3.0) werden zwar in KDE erkannt, laufen aber in der Virtualbox nicht mehr.
Durch die folgenden Meldungen von dmesg ist mir das Handling in KDE etwas suspect.

dmesg (immer wieder kehrende Meldungen hab ich rausgenommen):
194.211062] usb 3-3: new high speed USB device using xhci_hcd and address 2
[ 194.232236] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
[ 235.577767] usb 3-1: new SuperSpeed USB device using xhci_hcd and address 3
[ 235.591525] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
[ 483.506782] xhci_hcd 0000:03:00.0: Setup ERROR: address device command for slot 1.
[ 485.588376] usb 3-1: new SuperSpeed USB device using xhci_hcd and address 4
[ 485.602117] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
[ 540.236960] xhci_hcd 0000:03:00.0: Setup ERROR: address device command for slot 1.
[ 542.318539] usb 3-1: new SuperSpeed USB device using xhci_hcd and address 5
[ 542.332156] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
[ 898.557509] usb 3-3: new high speed USB device using xhci_hcd and address 6
[ 898.579125] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep

Das war nicht immer so.

/var/log/messages beim Einstecken von CORSAIR 32GB in der Virtualbox:
Nov 18 23:11:02 linux kernel: [ 466.709163] usb 3-3: USB disconnect, address 3
Nov 18 23:11:14 linux kernel: [ 478.663018] usb 3-1: new SuperSpeed USB device using xhci_hcd and address 4
Nov 18 23:11:14 linux kernel: [ 478.676721] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
Nov 18 23:11:14 linux kernel: [ 478.676823] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
Nov 18 23:11:14 linux kernel: [ 478.676902] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
Nov 18 23:11:14 linux kernel: [ 478.676977] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep
Nov 18 23:11:14 linux kernel: [ 478.676993] usb 3-1: New USB device found, idVendor=1b1c, idProduct=1a04
Nov 18 23:11:14 linux kernel: [ 478.676996] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 18 23:11:14 linux kernel: [ 478.676998] usb 3-1: Product: Survivor 3.0
Nov 18 23:11:14 linux kernel: [ 478.677000] usb 3-1: Manufacturer: Corsair
Nov 18 23:11:14 linux kernel: [ 478.677002] usb 3-1: SerialNumber: 1100300000000043
Nov 18 23:11:14 linux kernel: [ 478.678869] usb 3-1: selecting invalid altsetting 1
Nov 18 23:11:14 linux kernel: [ 478.679079] scsi8 : usb-storage 3-1:1.0
Nov 18 23:11:15 linux kernel: [ 479.673277] scsi 8:0:0:0: Direct-Access Corsair Survivor 3.0 1.00 PQ: 0 ANSI: 5
Nov 18 23:11:15 linux kernel: [ 479.673479] sd 8:0:0:0: Attached scsi generic sg3 type 0
Nov 18 23:11:15 linux kernel: [ 479.674004] sd 8:0:0:0: [sdc] 62685184 512-byte logical blocks: (32.0 GB/29.8 GiB)
Nov 18 23:11:15 linux kernel: [ 479.674187] sd 8:0:0:0: [sdc] Write Protect is off
Nov 18 23:11:15 linux kernel: [ 479.674192] sd 8:0:0:0: [sdc] Mode Sense: 23 00 00 00
Nov 18 23:11:15 linux kernel: [ 479.674195] sd 8:0:0:0: [sdc] Assuming drive cache: write through
Nov 18 23:11:15 linux kernel: [ 479.675198] sd 8:0:0:0: [sdc] Assuming drive cache: write through
Nov 18 23:11:15 linux kernel: [ 479.675920] sdc: sdc1
Nov 18 23:11:15 linux kernel: [ 479.676546] sd 8:0:0:0: [sdc] Assuming drive cache: write through
Nov 18 23:11:15 linux kernel: [ 479.676550] sd 8:0:0:0: [sdc] Attached SCSI removable disk
Nov 18 23:11:35 linux kernel: [ 499.607457] xhci_hcd 0000:03:00.0: WARN: short transfer on control ep

/var/log/messages beim Einstecken von TREKSTOR 16GB in der Virtualbox:
Nov 18 23:10:16 centos63 kernel: readahead-collector: sorting
Nov 18 23:10:17 centos63 kernel: readahead-collector: finished
Nov 18 23:10:30 centos63 kernel: usb 1-1: new high speed USB device number 2 using ehci_hcd
Nov 18 23:10:30 centos63 kernel: usb 1-1: New USB device found, idVendor=1e68, idProduct=0006
Nov 18 23:10:30 centos63 kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 18 23:10:30 centos63 kernel: usb 1-1: Product: USB-Stick QU
Nov 18 23:10:30 centos63 kernel: usb 1-1: Manufacturer: Trekstor
Nov 18 23:10:30 centos63 kernel: usb 1-1: SerialNumber: AAB7652700000158
Nov 18 23:10:30 centos63 kernel: usb 1-1: configuration #1 chosen from 1 choice
Nov 18 23:10:30 centos63 kernel: Initializing USB Mass Storage driver...
Nov 18 23:10:30 centos63 kernel: scsi3 : SCSI emulation for USB Mass Storage devices
Nov 18 23:10:30 centos63 kernel: usbcore: registered new interface driver usb-storage
Nov 18 23:10:30 centos63 kernel: USB Mass Storage support registered.
Nov 18 23:10:31 centos63 kernel: scsi 3:0:0:0: Direct-Access Trekstor USB-Stick QU 1100 PQ: 0 ANSI: 0 CCS
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: Attached scsi generic sg2 type 0
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] 31326208 512-byte logical blocks: (16.0 GB/14.9 GiB)
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] Write Protect is off
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] Assuming drive cache: write through
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] Assuming drive cache: write through
Nov 18 23:10:31 centos63 kernel: sdb: sdb1
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] Assuming drive cache: write through
Nov 18 23:10:31 centos63 kernel: sd 3:0:0:0: [sdb] Attached SCSI removable disk
Nov 18 23:10:53 centos63 kernel: usb 1-1: USB disconnect, device number 2
Nov 18 23:11:34 centos63 kernel: usb 1-1: new high speed USB device number 3 using ehci_hcd
Nov 18 23:11:34 centos63 kernel: usb 1-1: device descriptor read/64, error 18
Nov 18 23:11:34 centos63 kernel: usb 1-1: device descriptor read/64, error 18
Nov 18 23:11:34 centos63 kernel: usb 1-1: new high speed USB device number 4 using ehci_hcd
Nov 18 23:11:35 centos63 kernel: usb 1-1: device descriptor read/64, error 18
Nov 18 23:11:35 centos63 kernel: usb 1-1: device descriptor read/64, error 18
Nov 18 23:11:35 centos63 kernel: usb 1-1: new high speed USB device number 5 using ehci_hcd
Nov 18 23:11:35 centos63 kernel: usb 1-1: ep0 maxpacket = 9
Nov 18 23:11:35 centos63 kernel: usb 1-1: new high speed USB device number 6 using ehci_hcd
Nov 18 23:11:35 centos63 kernel: usb 1-1: ep0 maxpacket = 9
Nov 18 23:11:35 centos63 kernel: hub 1-0:1.0: unable to enumerate USB device on port 1

In anderen VMs wie openSUSE sieht das genauso aus.

Das einzige was noch klappt ist, alle Sticks über ein Verlängerungskabel hinten an USB2.0
anzuschliesen, dann ist zwar der Speed weg, aber sie werden zuverlässig erkannt.
Schade, die USB3.0-Anschlüsse vorne waren schön im Handling.

Mach ich ein Blackist auf xhci_hcd, sind die Anschlüsse vorne 'tot'

Wer hat das schon mal gehabt und weiss Rat?

MfG
 
Vorher wurden die Sticks per USB 2 und nicht als USB 3 Geräte verwendet. Du solltest, wenn möglich einen aktuelleren Kernel installieren.
 
Hallo,
danke für die Antwort.
Woran siehst Du den USB2-Einsatz?
Tatsächlich waren die Festplatten schonmal in einem älteren Shuttle verbaut.
Aber es lief ja auch die ganze Zeit als USB3, bis das Kernelupdate kam letzte Woche...

zZt kann ich USB2-Sticks am USB3-Port oder USB3-Sticks am USB2-Port
betreiben.

Manuelles Kernel Update habe ich früher schon mal gemacht mit 3.2:
mkdir /usr/src/linux-3.2
cd /usr/src/
wget http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.tar.xz
tar xf linux-3.2.tar.xz
cd linux-3.2
cp /boot/config-`uname -r` .config
yes "" | make oldconfig
cd /usr/src/linux-3.2
make
make -j8 bzImage modules
make modules_install install

Aber ich schlafe da immer so schlecht, wenn ich Pakete abseits
der Repos installiere; mit dem nächsten regulären Update
wird dann vielleicht wieder etwas überklatscht.

Welchen Kernel würdest Du zZt empfehlen?
MfG
 
oelk schrieb:
Aber es lief ja auch die ganze Zeit als USB3, bis das Kernelupdate kam letzte Woche...

Nicht mit den Kernelversionen vor 2.6.37 und u.U,. auch nicht mit einem 2.6.37er Kernel, weil es im USB Subsystem und der Verwendung von USB 3 einige Bugs gab.

oelk schrieb:
zZt kann ich USB2-Sticks am USB3-Port oder USB3-Sticks am USB2-Port
betreiben.

Das kannst du i.d.R, immer, weil USB 3 abwärtskompatibel ist und dann als USB 2 arbeitet.

oelk schrieb:
Manuelles Kernel Update habe ich früher schon mal gemacht mit 3.2:
mkdir /usr/src/linux-3.2
cd /usr/src/
wget http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.tar.xz
tar xf linux-3.2.tar.xz
cd linux-3.2
cp /boot/config-`uname -r` .config
yes "" | make oldconfig
cd /usr/src/linux-3.2
make
make -j8 bzImage modules
make modules_install install

Dein Vorgehen ist so nicht ganz korrekt und die Konfiguration, eines mit distributionsspezifischen Patchen bestückten 2.6er Kernels, 1:1 auf einen 3.x er Kernel übernehmen kann sehr schnell auch mal in die Hose gehen, wenn man wie du alle möglichen Fragen von make oldconfig mit Yes bestätigt und so mögliche Fehler ignoriert.

Code:
cd /usr/src
wget http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.tar.gz
tar -xzf linux-3.2.tar.gz
ln .-s /usr/src/linux-3.2 /usr/src/linux
cd linux
Um die Sourcen sauber zu halten solltest du make ein Builddirectory mitgeben.
Code:
make  mrpropper
make O=/home/username/build localmodconfig
make O=/home/username/build
sudo make O=/home/username/build modules_install

oelk schrieb:
Aber ich schlafe da immer so schlecht, wenn ich Pakete abseits
der Repos installiere; mit dem nächsten regulären Update
wird dann vielleicht wieder etwas überklatscht.

Kein Grund für schlechten Schlaf. Bei einem Update wird nichts überschrieben, weil die Kernelversionen unterschiedlich sind. Du kannst dir auch mit
Code:
make O=/home/username/build rpm-pkg

RPM Pakete erstellen lassen.

Wenn du einen Kernel mit Longtime Support verwenden möchtest solltest du den 3.2 verwenden.
 
Hallo zusammen,

endlich mal ausagekräftige Antworten, danke dafür.

Ich werde es berherzigen und probieren und erstmal in einer VM ausprobieren,
Rückmeldung kommt.

Das Update von Kernel von 2.6.x auf 3.2.x klappte bisher ganz gut,
ohne das mir der Fußschweiss auf der Stirn tritt.
Aber man weiss ja nie...

MfG
 
Moin,

Dein Weg hat leider auch nicht funktioniert.

Code:
cd /usr/src
wget http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.tar.gz
tar -xzf linux-3.2.tar.gz
ln .-s /usr/src/linux-3.2 /usr/src/linux
cd linux
Warum verlinks Du nach /usr/src/linux?
Das sind doch noch die Quellen der originalen Kernels drin.

Code:
make  mrpropper
make O=/home/username/build localmodconfig
make O=/home/username/build
sudo make O=/home/username/build modules_install
Ich wollte eigentlich kein Package bauen.
Code:
make O=/home/username/build rpm-pkg
Das funktionierte nicht
Auch nach anlegen der Pfade im Home-Verzeichnis brach er ab.

Wenn du einen Kernel mit Longtime Support verwenden möchtest solltest du den 3.2 verwenden.
Das habe ich auf einer Mminimal Installation in einer VM probiert
danach ging USB garnicht mehr.

Also doch keine Lösung in Sicht. Das ist ja auch ein riesen Sprung
von 2.6.37 nach 3.2.34.

AK
 
oelk schrieb:
Warum verlinks Du nach /usr/src/linux?
/usr/src/linux ist ein symbolischer Link, und der sollte immer auf das Verzeichnis zeigen, mit dem man sich gerade beschäftigt, in Deinem Fall also auf /usr/src/linux-3.2 (bzw. /usr/src/linux-3.2.34, wenn Du diese Version heruntergeladen hast).

oelk schrieb:
Das funktionierte nicht
Mit dieser Aussage wird Dir niemand helfen können.

oelk schrieb:
in einer VM probiert
Ein virtuelles Gast-System kann nur auf eine virtuelle (d. h. vom HOST-System zur Verfügung gestellte) Hardware zugreifen.

oelk schrieb:
Das ist ja auch ein riesen Sprung von 2.6.37 nach 3.2.34.
Von 2.6.37 nach 3.2 werden nur 4 Versionen (2.6.38, 2.6.39, 3.0 und 3.1) ausgelassen. Probleme sehe ich nur, wenn diese vanilla-Version notwendige openSUSE-spezifische Modifikationen nicht enthält.
 
Das sieht jetzt schon besser aus:

ich
gehe in den runlevel 3
starte auf console1 unter /usr/src/linux-3.2.34 make menuconfig
starte auf console2 unter /usr/src/linux make menuconfig und vergleiche die Optionen

Lustig, im 1. Anlauf mit localmodconfig war initram-support disabled, klar das das Ding dann nicht hochfährt.
Im 2. Anlauf ging es dann, aber USB funktionierte garnicht.
Im 3. Anlauf ging USB, aber Sound nicht.
IPV6 ist ganz weg, also alles vergleichen und aktivieren.
Jetzt habe ich das nochmal gecheckt mit Sound, make läuft gerade.
Was überhaupt fehlt ist BOOTSPLASH-Support.

Das heisst für mich, ein 'make localmodconfig' muss man nacharbeiten.
Was für den Unbedarften, der das eher selten macht wie mich, dann schon etwas länger
dauert.

Langfristig ist das eh keine Lösung, aber die 12er Versionen sind bei mir kaum benutzbar,
der Einsatz von NVIDIA-GPU onboard rächt sich da im Laptop, weder Upgrade, noch
Neuinstallation bringen ein Bild.
Und hier auf dem Shuttle SH67H3 will ich's garnicht erst auspobieren, da ist zuviel drauf.
Das ist eher produktiv.

Da muss langfristig ene andere Distri her, bei der das alles stabiler und zuverlässiger läuft.
Mal sehen wwas Mint14 so hergibt.

Aber auf jeden Fall danke erstmal.
 
Nachtrag:

Das Ding läuft, Sound ist da, USB 3.0 schient auch zu funktionieren, aber nur im Host.
In den VMs leider nicht, zumindest nicht die USB3 Sticks.

Ich sollte vielleicht noch eins erwähnen:
in dem alten Shuttle war Keyb/Mouse PS/2, im neuen musste ich auf USB umsteigen
und das auch noch mit neuem KVM-Switch DVI-PS/2, dann sind die Devices
usbhid, ich das Disaster schon damals geahnt.

Fazit:
Wenn er denn mal läuft, ist Kernel 3.2.34 sauschnell

MfG
 
Oben