# USB 2.0 drives making system hang.

## .MonkeyBumps

have two different usb 2 drives, one is an ntfs drive and the other is vfat. now the system picks them up fine. when i plug them in dmesg see them and they are assigned to sda1 (if only one is connected). then i can do an "fdisk -l /dev/sda" and it shows the correct info for that drive. now if i try and mount the drives with the following command:

"mount -r -t ntfs /dev/sda1 /mnt/usb_drive"

"mount -t vfat /dev/sda1 /mnt/usb_drive"

the system just hangs.... keyboard locks up and system is down for the count. (i guess it could just be the usb hanging cause both my mouse and keyb are usb aswell)

i have read a few post here about mounting usb drives but nothing about the system hanging after you try and mount the dev. any ideas on what would cause something like this?

================================================

= here is some of the kernel log.... this should tell something

================================================

Aug 28 21:24:25 [kernel] Initializing USB Mass Storage driver...

Aug 28 21:24:25 [kernel] scsi0 : SCSI emulation for USB Mass Storage devices

Aug 28 21:24:25 [kernel] Vendor: WDC WD80 Model: 0BB-00CAA1 Rev: 17.0

Aug 28 21:24:25 [kernel] Attached scsi disk sda at scsi0, channel 0, id 0, lun 0

Aug 28 21:24:25 [kernel] SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)

Aug 28 21:45:35 [kernel] usb.c: USB disconnect on device 00:10.3-4 address 2

Aug 28 21:45:40 [kernel] Device 08:01 not ready.

Aug 28 21:45:40 [kernel] NTFS: Read/write error.

Aug 28 21:46:32 [kernel] hub.c: new USB device 00:10.3-4, assigned address 3

Aug 28 21:46:43 [kernel] usb_control/bulk_msg: timeout

Aug 28 21:46:43 [kernel] scsi1 : SCSI emulation for USB Mass Storage devices

Aug 28 21:46:48 [kernel] Vendor: QUANTUM Model: FIREBALL ST2 Rev: A0F.

Aug 28 21:46:48 [kernel] Attached scsi disk sdb at scsi1, channel 0, id 0, lun 0

Aug 28 21:46:48 [kernel] SCSI device sdb: 5008752 512-byte hdwr sectors (2564 MB)

Aug 28 21:47:05 [kernel] Device 08:00 not ready.

Aug 28 21:47:05 [kernel] Device 08:01 not ready.

Aug 28 21:47:07 [kernel] Device 08:00 not ready.

Aug 28 21:47:07 [kernel] Device 08:01 not ready.

Aug 28 21:47:08 [kernel] Device 08:00 not ready.

Aug 28 21:47:08 [kernel] Device 08:01 not ready.

Aug 28 21:47:09 [kernel] Device 08:00 not ready.

Aug 28 21:47:09 [kernel] Device 08:01 not ready.

Aug 28 21:47:09 [kernel] Device 08:00 not ready.

Aug 28 21:47:09 [kernel] Device 08:01 not ready.

Aug 28 21:47:09 [kernel] Device 08:00 not ready.

Aug 28 21:47:09 [kernel] Device 08:01 not ready.

Aug 28 21:47:09 [kernel] Device 08:00 not ready.

Aug 28 21:47:09 [kernel] Device 08:01 not ready.

Aug 28 21:47:10 [kernel] Device 08:00 not ready.

Aug 28 21:47:10 [kernel] Device 08:01 not ready.

Aug 28 21:47:10 [kernel] Device 08:00 not ready.

Aug 28 21:47:10 [kernel] Device 08:01 not ready.

===============================================

* also drives work on all other systems i have tried.

thanks for the help,

-mb

==============================================

my system is running :

gentoo

kernel -> 2.4.20 (gamming-source)

all other usb hardware works. but these are the only usb 2 devices in the system.

==============================================

----------

## .MonkeyBumps

this the info on my current system....  if you need other info please ask...  i just dont understand way it locks when i mount the drive.....

thanks for your help!

-mb

dmesg after plugin in the vfat usb2 drive:

```
[color=red]hub.c: new USB device 00:10.3-4, assigned address 2

usb_control/bulk_msg: timeout

scsi1 : SCSI emulation for USB Mass Storage devices

  Vendor: QUANTUM   Model: FIREBALL ST2      Rev: A0F.

  Type:   Direct-Access                      ANSI SCSI revision: 02

Attached scsi disk sda at scsi1, channel 0, id 0, lun 0

SCSI device sda: 5008752 512-byte hdwr sectors (2564 MB)

 /dev/scsi/host1/bus0/target0/lun0: p1

WARNING: USB Mass Storage data integrity not assured[/color]

==

usb.c: registered new driver usbdevfs

usb.c: registered new driver hub

usb.c: new USB bus registered, assigned bus number 1

usb.c: new USB bus registered, assigned bus number 2

usb.c: new USB bus registered, assigned bus number 3

usb.c: new USB bus registered, assigned bus number 4

usb.c: registered new driver hid

usb.c: registered new driver usb-storage

input0: USB HID v1.10 Keyboard [Logitech Logitech USB Keyboard] on usb4:2.0

input1: USB HID v1.10 Pointer [Logitech Logitech USB Keyboard] on usb4:2.1

input2: USB HID v1.10 Mouse [B16_b_02 USB-PS/2 Optical Mouse] on usb4:3.0

usb.c: USB device 3 (vend/prod 0x46d/0x870) is not claimed by any active driver.

usb_control/bulk_msg: timeout
```

lsusb after plugin the vfat drive:

```
bash-2.05b# lsusb

Bus 004 Device 001: ID 0000:0000

Bus 004 Device 002: ID 046d:c30a Logitech, Inc.

Bus 004 Device 003: ID 046d:c025 Logitech, Inc. MX500 Optical Mouse

Bus 003 Device 001: ID 0000:0000

Bus 003 Device 002: ID 04cc:1122 Philips Semiconductors Hub

Bus 003 Device 003: ID 046d:0870 Logitech, Inc. QuickCam Express

Bus 002 Device 001: ID 0000:0000

Bus 001 Device 001: ID 0000:0000

[color=red]Bus 001 Device 003: ID 0c0b:b001 Dura Micro, Inc. (Acomdata)[/color]
```

fdisk -l /dev/sda

```
Disk /dev/sda: 2564 MB, 2564481024 bytes

128 heads, 63 sectors/track, 621 cylinders

Units = cylinders of 8064 * 512 = 4128768 bytes

   Device Boot    Start       End    Blocks   Id  System

/dev/sda1             1       621   2503840+   b  Win95 FAT32
```

lsmod:

```
Module                  Size  Used by    Tainted: PF

ide-scsi                7600   0

floppy                 47004   0  (autoclean)

nls_iso8859-1           2780   1  (autoclean)

nls_cp437               4316   1  (autoclean)

vfat                    9324   1  (autoclean)

fat                    29816   0  (autoclean) [vfat]

nvidia               1626624  11

8139too                14152   1

mii                     2128   0  [8139too]

usb-storage            55608   0

hid                    12468   0  (unused)

uhci                   23008   0  (unused)

ehci-hcd               13056   0  (unused)

usbcore                55456   1  [usb-storage hid uhci ehci-hcd] 
```

/proc/bus/usb/devices

```
S:  Manufacturer=Linux 2.4.20-gaming-r5 ehci-hcd

S:  Product=VIA Technologies, Inc. USB 2.0

S:  SerialNumber=00:10.3

C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=256ms

T:  Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#=  3 Spd=480 MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=0c0b ProdID=b001 Rev=11.10

S:  Manufacturer=DMI

S:  Product=USB 2.0 Storage Adaptor

S:  SerialNumber=0B02011C0420E34C

C:* #Ifs= 1 Cfg#= 2 Atr=c0 MxPwr= 98mA

I:  If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=125us

E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

E:  Ad=83(I) Atr=03(Int.) MxPS=   2 Ivl=32ms
```

cat /proc/scsi/usb-storage-0/1

```
   Host scsi1: usb-storage

       Vendor: DMI

      Product: USB 2.0 Storage Adaptor

Serial Number: 0B02011C0420E34C

     Protocol: Transparent SCSI

    Transport: Bulk

         GUID: 0c0bb0010b02011c0420e34c

     Attached: Yes 
```

cat /proc/scsi/scsi

```
Attached devices:

Host: scsi1 Channel: 00 Id: 00 Lun: 00

  Vendor: QUANTUM  Model: FIREBALL ST2     Rev: A0F.

  Type:   Direct-Access                    ANSI SCSI revision: 02

```

Computer spec:

```
mb       -> MSI KT3 Ultra2-R  (via kt333 chipset)

cpu      -> AMD 1800+

USB      -> VIA (VT8235)    (is a usb 2.0 chipset)

OS       -> Gentoo 1.4

Kernel   -> 2.4.20 (gaming-source-r5)
```

----------

## Janne Pikkarainen

I had a similar problem in January or so. Try to apply this patch to your /usr/src/linux/drivers/usb/storage/unusual_devs.h, recompile your kernel and see if it helps. I just customised my old code for your device and have no idea if it's working or not...

---

--- unusual_devs_original.h     2003-01-29 20:34:18.000000000 +0200

+++ unusual_devs.h      2003-01-29 20:28:00.000000000 +0200

@@ -508,0 +509,7 @@

+UNUSUAL_DEV(  0x46d, 0x870, 0x0000, 0x110,

+               "Quantum",

+               "Fireball ST2",

+               US_SC_SCSI, US_PR_BULK, NULL,

+               US_FL_FIX_INQUIRY ),

+

---Last edited by Janne Pikkarainen on Fri Aug 29, 2003 9:44 pm; edited 1 time in total

----------

## Janne Pikkarainen

And for your vfat device you could try the same thing, except patch would go like this:

---

--- unusual_devs_original.h 2003-01-29 20:34:18.000000000 +0200

+++ unusual_devs.h 2003-01-29 20:28:00.000000000 +0200

@@ -508,0 +509,7 @@

+UNUSUAL_DEV( 0x0c0b, 0xb001, 0x0000, 0x110,

+ "Dura Micro",

+ "Acomdata",

+ US_SC_SCSI, US_PR_BULK, NULL,

+ US_FL_FIX_INQUIRY ),

+

---

----------

## .MonkeyBumps

thanks so much for the help!   but i do have a few questions.  please bare with me i'm kinda new to linux as an OS, but i'm not new to computers...(its my job).  

is there not a fix for all usb devices?  or can i apply a patch that will fix this (bug?).  if that is not an option, then can i apply a patch that will allow me to use both of these devices at the same time?  maybe i just dont understandd what these patches are doing....   if you could please tell me whats going on and what i need to do (in alittle more detail). 

again thats for all the help.

.monkeybumps

----------

## Janne Pikkarainen

I'm not a kernel hacker but I almost accidentally find out that patch thing.  :Smile:  For my understanding (I could be wrong) the thing is that some USB devices don't behave like excepted during the handshake phase (when plugging the device in, that is) and the patch fixes that. Those devices should wake up earlier, but they are waiting for 64(?) bytes of data before actually doing anything... 

You can also try (instead of patching) turning on the "Long timeout for slow-responding devices" under kernel configurations "USB Support" menu, recompile your kernel and see if that helps.

----------

## .MonkeyBumps

again thanks a ton...  your the man.  going to give that a try right now!

----------

## Janne Pikkarainen

Good luck!

----------

## .MonkeyBumps

ok, i've now tried the patches you gave me for unusual_dev.h and it didnt fix my problems...   so i then tried the setting "Long timeout for slow-responding devices" and it doesnt seem to help at all.  do you have any other ideas?  i really need this darn thing to work, well i just want it to real bad   :Smile: 

oh yeah where did you get the HEX values from that are the parameters in the unusual_dev() call?  what that from some of the info i provided?  do you think that if i update the unusual_dev.h file to a the newest one out it would work?  right now i'm using 2.4.20.   maybe a patch to this file that would fix it?   

thanks again for the help.....

mb

----------

## .MonkeyBumps

what about my version of hotplug..... could this be one of my problems?

----------

## danzvash

Not sure about this, but I had also had my system hang when I loaded ehci-hcd (for USB2.0) BEFORE usb-ohci (for USB1.1) - either manually or with help from hotplug. Loading usb-ohci THEN ehci-hcd seems to give no problems though.

----------

## shezi

This might help:

https://forums.gentoo.org/viewtopic.php?t=218170&highlight=usb+disk+hangs

Or this:

https://forums.gentoo.org/viewtopic.php?t=218170&highlight=usb+disk+hangs

----------

## reesm

Is there a kernel fix for this? This seems like a kernel bug to me. I have the same problem with an enclosure i just bought this evening. Works great on my lappy (Win2k usb 1.1), on my WinXP desktop for movie editing (usb 2.0, asus a7v333) but not on my shuttle XPC (gentoo, kernel 2.4.28-r9, usb2.0, nforce2). Since The shuttle XPC i have is small i decided to get this for crazy awesome external storage. Somebody please tell me it's not going to be useless with USB 1.1...

----------

