WD MyBook 1TB USB 2.0 only (1012) under Linux slow writes and system frozen for seconds

Hello,

I ahve problem under Linux with random periods of time WD MyBook 1TB 1012 has transfers rates about 3MB/s

and blocks any other read/writes attempts and aplications stop running while are waiting for IO.

This is also when PC is idle… it looks like there is some communication with MyBook and tried different kernels

and the same strange thing happends from time to time.

Nowadays, I’m using Fedora 12 with latest stable Linux kernel (customized by $ make oldconfig)

$ uname -a
Linux aslin 2.6.39.1-aslin_server #1 SMP Thu Jun 9 18:16:36 CEST 2011 x86_64 x86_64 x86_64 GNU/Linux

Below stats from period of time where no problems with WD MyBook 1TB-nice write transfer about 30MB/s.

dd if=/dev/zero of=zero.1gb bs=1024k count=1024; sync

1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 34.0652 s, 31.5 MB/s

dd if=/dev/zero of=zero.1gb bs=1024k count=512; sync

512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 15.8287 s, 33.9 MB/s

Linux system monitoring tool “dstat” in 1 second periods reports good transfers (writes in 8th column).

Note, that I followed “sync” to try to flush data to this usb disk drive, because of system could cache this data

and flush later…

dstat

usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw
  0   0   0 100   0   0|   0   600k|   0     0 |   0     0 | 131   102
  0   0   0 100   0   0|   0     0 |   0     0 |   0     0 |  99    46
  0   0   0 100   0   0|8192B 4560k|   0     0 |   0     0 | 340   466
  0   0   0 100   0   0|   0     0 |   0     0 |   0     0 |  96    49
  0   0   0 100   0   0|4096B  872k|   0     0 |   0     0 | 138   140
  0   2   0  98   0   0|4096B 2040k|   0     0 |   0     0 | 219   236
  0   0   0 100   0   0|   0     0 |   0     0 |   0     0 |  84    42
  0   0   0 100   0   0|   0  2880k| 173B  221B|   0     0 | 260   309
  0   0   0 100   0   0|   0     0 |  76B   64B|   0     0 |  91    54
  1   0   0 100   0   0|   0  2040k|   0     0 |   0     0 | 214   236
  1   1   0  99   0   0|   0  2192k|   0     0 |   0     0 | 218   245
  0   0   0 100   0   0|   0     0 |   0     0 |   0     0 |  94    46
  1   0   0 100   0   0|   0   960k|   0     0 |   0     0 | 183   214
  0   0   0  99   0   0|   0  1440k|   0     0 |   0     0 | 182   180
  1   1   0  99   0   0|   0  2280k|   0     0 |   0     0 | 214   253
  0   1   0  99   0   0|   0    10M|   0     0 |   0     0 | 626   967
  0   2   0  97   0   1|   0    28M|   0     0 |   0     0 |1514  2590
  0   1   0  98   0   1|   0    26M|   0     0 |   0     0 |1431  2434
  0   3   0  96   0   1|   0    22M|   0     0 |   0     0 |1252  2071
  0   2   0  98   0   0|   0    28M|   0     0 |   0     0 |1529  2619
  0   3   0  96   0   2|   0    28M|   0     0 |   0     0 |1523  2589
  1   2   0  96   0   1|   0    28M|   0     0 |   0     0 |1598  2751
  1   3   0  94   0   3|   0    28M|   0     0 |   0     0 |1587  2716
  0   1   0  98   0   0|4096B   16M|   0     0 |   0     0 | 910  1480
  0   2   0  97   0   1|   0    28M|   0     0 |   0     0 |1527  2623
  0   2   0  96   0   1|   0    28M|   0     0 |   0     0 |1525  2612
  1   1   1  98   0   1|   0    28M|   0     0 |   0     0 |1689  2718
  1   1   1  98   0   1|   0    24M|   0     0 |   0     0 |1551  2326

But, as mentioned above from time to time-have no idea why-even idle system has above 80% wait IO

and then write rates are below 5MB/s and there are no 25MB/s transfers, and what is much worse but could wait

if were able to use apllications without delays,but

system is UNUSABLE, and  this very slow write operation hungs up system for several seconds-

when tried this 1GB write test followed by sync… had to try to break this command below by ctl-c , because

was not able to open any other file or write even smal ammout of data…

dd if=/dev/zero of=zero.1gb bs=1024k count=1024; sync

records in
565+0 records out
592445440 bytes (592 MB) copied, 151.356 s, 3.9 MB/s

Above had to ctl-c this operation, because of could do enything about move mouse cursor and switch windows-

!!! Looks like some system process (maybe “sync” sheduled by system from time to time, I guess)

tries AT ONCE write all cached data and there is no room for other reads or even small writes !!!

Also tried other IO schedulers by passing to linux kernel during boot:

elevator=deadline

and setting /dev/sda IO scheduler to other like default “cfq” “noop”

($ echo “noop” >/sys/block/sda/queue/scheduler )

and increasing number of requests ($ echo “1024” >/sys/block/sda/queue/nr_requests )

$ lsscsi
[0:0:0:0]    disk    WD       My Book          1012  /dev/sda
[0:0:0:1]    enclosu WD       My Book Device   1012  -

But from time to time still this WD MyBook 1TB (only USB 2.0 port)

blocks system for several seconds…

Also disconnected other USB devices from PC (motherboard Asus M2A-VM $GB RAM).

Have no idea why this happends and why this IO write operations block read operations and make system

look like frozen for several seconds…

Regards.

Szan.

I don’t believe Linux is a supported OS. Problems on Linux aren’t uncommon.

Joe