1

I Have 3bon-s35s SATA to USB converter(or controller). It use JMicron JM20339 chipset.

Windows 7 can recognize WD 4TB HDD, but Ubuntu dosen't. dmesg shows below

[    2.990457] scsi 6:0:0:0: Direct-Access     WDC WD40EZRX-00SPEB0          PQ: 0 ANSI: 2 CCS
[    2.991789] sd 6:0:0:0: Attached scsi generic sg1 type 0
[    2.992179] sd 6:0:0:0: [sdb] 3519069872 512-byte logical blocks: (1.80 TB/1.63 TiB)
[    2.993272] sd 6:0:0:0: [sdb] Write Protect is off
[    2.993281] sd 6:0:0:0: [sdb] Mode Sense: 00 38 00 00
[    2.994269] sd 6:0:0:0: [sdb] Asking for cache data failed
[    2.994278] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[    3.031761]  sdb: unknown partition table
[    3.035276] sd 6:0:0:0: [sdb] Attached SCSI disk 

Under ubuntu, it just reports 1.63TiB. Datasheet says it supports LBA48 (not official. JMicron site has just JM20337)

http://www.chinaeds.com/zl/2007102620325297882.pdf

Anyway when I attached WD 4TB HDD on M/B SATA port, kernel says 4TB

[    2.466401] scsi 3:0:0:0: Direct-Access     ATA      WDC WD40EZRX-00S 0A80 PQ: 0 ANSI: 5
[    2.466705] sd 3:0:0:0: [sdb] 7814037168 512-byte logical blocks: (4.00 TB/3.63 TiB)
[    2.466709] sd 3:0:0:0: [sdb] 4096-byte physical blocks
[    2.466723] sd 3:0:0:0: Attached scsi generic sg1 type 0
[    2.466764] sd 3:0:0:0: [sdb] Write Protect is off
[    2.466767] sd 3:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    2.466792] sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    2.560959]  sdb: sdb1 sdb2
[    2.561389] sd 3:0:0:0: [sdb] Attached SCSI disk 

It seems like that ubuntu kernel has buggy JMicron USB driver. How can I fix the problem?

Tested Platform

  • AMD 4850e
  • MSI MS-7549 (785g M/B)
  • Ubuntu desktop 14.04 LTS 32bit & 64bit(Live USB)
  • WD40EZRX 4.0TB HDD GPT / NTFS
  • 3bon 3bon-s35s / JMicron JM20339

fdisk & parted log

$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000ac755

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   621012991   310505472   83  Linux
/dev/sda2       621015038   625141759     2063361    5  Extended
/dev/sda5       621015040   625141759     2063360   82  Linux swap / Solaris

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 1801.8 GB, 1801763774464 bytes
256 heads, 63 sectors/track, 218196 cylinders, total 3519069872 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  4294967295  2147483647+  ee  GPT 

.

$ sudo parted /dev/sda print
Model: ATA WDC WD3200BEVT-0 (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End    Size    Type      File system     Flags
 1      1049kB  318GB  318GB   primary   ext4            boot
 2      318GB   320GB  2113MB  extended
 5      318GB   320GB  2113MB  logical   linux-swap(v1)

$ sudo parted /dev/sdb print
Error: Invalid argument during seek for read on /dev/sdb 
4
  • Linux is seeing the disk with a 32-bit limitation. Such a limitation is common when dealing with USB-to-ATA interfaces. This is the first time I've heard of such an interface working correctly in Windows but not in Linux. I recommend you triple-check that detail, and if it is working, file a bug report. (This site is not for filing bug reports, and it's very unlikely that the relevant developers will see your post here.)
    – Rod Smith
    Mar 28, 2015 at 17:29
  • Thanks for reply. I spent time about 3 days for this problem. Additionally, gparted reports backup table corrupted but primary table works. So I try to "print" option but libparted.so crashed. It looks like have a bug on ntfs-3g library or JMicron driver. or due to NTFS is NOT open source. Anyway I'll try more. Mar 28, 2015 at 20:21
  • No, you're seeing a 32-bit limit on access to the disk. The incorrect disk size is symptomatic of this, as is the parted error you report. (The backup partition table is stored at the end of the disk, so it will seem to be corrupt if the OS can't read the end of the disk.) Filesystems, including NTFS, are stored within partitions, so problems related to NTFS cannot affect partition tables, which define partitions.
    – Rod Smith
    Mar 28, 2015 at 22:56
  • I bought the NAS. I think using NAS is better than solve the problem. Sorry and thanks you. If I have another vendor's USB to SATA I'll test. Mar 29, 2015 at 6:49

0

You must log in to answer this question.

Browse other questions tagged .