Hello,
I am experiencing difficulty trying to use a Samsung 850 EVO - 250GB - 2.5-Inch SATA III Internal SSD (MZ-75E250B/AM) with the Jetson TX1. This is a new Jetson TX1 Developer Kit. I successfully flashed JetPack 2.2 (L4T R24.1, 64bit kernel) on Monday. Since then, I have been trying to install the SSD to expand the available storage, but I keep encountering errors.
The SATA cable that I am using and the drive itself appear to be okay; I have used the cable to connect the SSD to a MacBook Pro via a Diablotek USB 3.0 to SATA adapter. Mac OS X ‘El Capitan’ Version 10.11.5 (15F34) saw the drive, and I was able to format the drive as exFAT with an msdos/MBR partition table using Mac’s Disk Utility.
I swapped out the hard drive of a Toshiba Satellite S855-S5378 with the SSD and booted the laptop using the ubuntu-14.04.4-desktop-amd64 live DVD image. After installing the exfat-fuse and exfat-utils packages, I was able to mount the partition and successfully read a text file that I had placed on the drive. I then used gparted
to convert the filesystem from exFAT to ext4. I was able to edit a new text file on the ext4 partition successfully.
Next, I cabled the SSD back onto the Jetson TX1. Powering on the Jetson, there are no error messages from the kernel. The output from dmesg
is: http://pastebin.com/MZYwSt0K
The output from hdparm -I /dev/sda
is: http://pastebin.com/5Jmgw1yz
I mounted the partition in read-only mode and attempted to cat a text file:
root@tegra-ubuntu:~# mount -t ext4 -o ro,nodiscard,noatime /dev/sda1 /data
root@tegra-ubuntu:~# cat /data/stuff.txt
The new dmesg
entries were:
[ 315.496379] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: nodiscard
[ 401.056876] ata1.00: exception Emask 0x0 SAct 0x4000 SErr 0x540000 action 0x6 frozen
[ 401.064714] ata1: SError: { CommWake Dispar Handshk }
[ 401.071150] ata1.00: failed command: READ FPDMA QUEUED
[ 401.078044] ata1.00: cmd 60/08:70:02:30:04/00:00:00:00:00/40 tag 14 ncq 4096 in
[ 401.078044] res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[ 401.093095] ata1.00: status: { DRDY }
[ 401.096830] ata1: hard resetting link
[ 401.647523] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 401.651141] ata1.00: supports DRM functions and may not be fully accessible
[ 401.654179] ata1.00: supports DRM functions and may not be fully accessible
[ 401.655126] ata1.00: configured for UDMA/133
[ 401.667140] ata1.00: device reported invalid CHS sector 0
[ 401.667603] ata1: EH complete
I had previously seen an Ubuntu bug report (trim does not work with Samsung 840 EVO after firmware update (EXT0DB6Q)) which made me think that perhaps the SSD does not actually support TRIM, so I tried unmounting the partition, disabling NCQ, remounting, and cat’ing the file:
root@tegra-ubuntu:~# umount /data
root@tegra-ubuntu:~# echo 1 >/sys/block/sda/device/queue_depth
root@tegra-ubuntu:~# mount -t ext4 -o ro,nodiscard,noatime /dev/sda1 /data
root@tegra-ubuntu:~# cat /data/stuff.txt
This worked fine, and the only new dmesg entry was [ 530.641970] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: nodiscard
I next tried mounting the partition in read-write mode. There are a lot of errors reported by dmesg
:
[ 650.771095] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 650.778695] ata1.00: irq_stat 0x08000000, interface fatal error
[ 650.784913] ata1: SError: { Handshk }
[ 650.788605] ata1.00: failed command: WRITE DMA
[ 650.793269] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 25 dma 4096 out
[ 650.793269] res 50/00:00:09:00:84/00:00:00:00:00/ee Emask 0x10 (ATA bus error)
[ 650.808797] ata1.00: status: { DRDY }
[ 650.812586] ata1: hard resetting link
[ 651.349728] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 651.351367] ata1.00: supports DRM functions and may not be fully accessible
[ 651.354833] ata1.00: supports DRM functions and may not be fully accessible
[ 651.355793] ata1.00: configured for UDMA/133
[ 651.370141] ata1: EH complete
[ 651.370900] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 651.380051] ata1.00: irq_stat 0x08000000, interface fatal error
[ 651.386134] ata1: SError: { Handshk }
[ 651.390529] ata1.00: failed command: WRITE DMA
[ 651.395213] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 26 dma 4096 out
[ 651.395213] res 50/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
[ 651.411776] ata1.00: status: { DRDY }
[ 651.415525] ata1: hard resetting link
[ 651.960001] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 651.961498] ata1.00: supports DRM functions and may not be fully accessible
[ 651.964692] ata1.00: supports DRM functions and may not be fully accessible
[ 651.965647] ata1.00: configured for UDMA/133
[ 651.980545] ata1: EH complete
[ 651.981298] ata1.00: limiting speed to UDMA/100:PIO4
[ 651.981436] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 651.990670] ata1.00: irq_stat 0x08000000, interface fatal error
[ 651.996747] ata1: SError: { Handshk }
[ 652.001283] ata1.00: failed command: WRITE DMA
[ 652.005954] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 27 dma 4096 out
[ 652.005954] res 50/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
[ 652.022758] ata1.00: status: { DRDY }
[ 652.026510] ata1: hard resetting link
[ 652.569801] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 652.571333] ata1.00: supports DRM functions and may not be fully accessible
[ 652.574476] ata1.00: supports DRM functions and may not be fully accessible
[ 652.575843] ata1.00: configured for UDMA/100
[ 652.590711] ata1: EH complete
[ 652.591463] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 652.600050] ata1.00: irq_stat 0x08000000, interface fatal error
[ 652.606136] ata1: SError: { Handshk }
[ 652.613287] ata1.00: failed command: WRITE DMA
[ 652.617755] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 28 dma 4096 out
[ 652.617755] res 50/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
[ 652.633369] ata1.00: status: { DRDY }
[ 652.637185] ata1: hard resetting link
[ 653.181213] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 653.182798] ata1.00: supports DRM functions and may not be fully accessible
[ 653.185916] ata1.00: supports DRM functions and may not be fully accessible
[ 653.186982] ata1.00: configured for UDMA/100
[ 653.200972] ata1: EH complete
[ 653.201884] ata1.00: limiting speed to UDMA/33:PIO4
[ 653.201965] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 653.211576] ata1.00: irq_stat 0x08000000, interface fatal error
[ 653.217566] ata1: SError: { Handshk }
[ 653.221552] ata1.00: failed command: WRITE DMA
[ 653.226082] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 29 dma 4096 out
[ 653.226082] res 50/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
[ 653.243263] ata1.00: status: { DRDY }
[ 653.246981] ata1: hard resetting link
[ 653.799953] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 653.801572] ata1.00: supports DRM functions and may not be fully accessible
[ 653.804706] ata1.00: supports DRM functions and may not be fully accessible
[ 653.805917] ata1.00: configured for UDMA/33
[ 653.820281] ata1: EH complete
[ 653.821031] ata1.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[ 653.828771] ata1.00: irq_stat 0x08000000, interface fatal error
[ 653.835677] ata1: SError: { Handshk }
[ 653.843175] ata1.00: failed command: WRITE DMA
[ 653.847642] ata1.00: cmd ca/00:08:02:00:00/00:00:00:00:00/e0 tag 30 dma 4096 out
[ 653.847642] res 50/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
[ 653.863186] ata1.00: status: { DRDY }
[ 653.867000] ata1: hard resetting link
[ 654.410054] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 654.411222] ata1.00: supports DRM functions and may not be fully accessible
[ 654.414421] ata1.00: supports DRM functions and may not be fully accessible
[ 654.415368] ata1.00: configured for UDMA/33
[ 654.430440] sd 0:0:0:0: [sda]
[ 654.430568] Result: hostbyte=0x00 driverbyte=0x08
[ 654.430673] sd 0:0:0:0: [sda]
[ 654.430745] Sense Key : 0xb [current] [descriptor]
[ 654.430912] Descriptor sense data with sense descriptors (in hex):
[ 654.430992] 72 0b 00 00 00 00 00 0c 00 0a 80 00 00 00 00 00
[ 654.431555] 00 00 00 00
[ 654.431781] sd 0:0:0:0: [sda]
[ 654.431854] ASC=0x0 ASCQ=0x0
[ 654.431963] sd 0:0:0:0: [sda] CDB:
[ 654.432029] cdb[0]=0x2a: 2a 00 00 00 00 02 00 00 08 00
[ 654.432479] end_request: I/O error, dev sda, sector 2
[ 654.437740] Buffer I/O error on device sda1, logical block 0
[ 654.444803] lost page write due to I/O error on sda1
[ 654.450998] ata1: EH complete
[ 654.462373] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: nodiscard
I then tried creating a new text file on the drive; however, vi
reported that an error occurred and the file was not successfully written. There are more errors reported by dmesg
: http://pastebin.com/zeFSXZmZ
Now when I try to mount the partition, mount
says:
mount: wrong fs type, bad option, bad superblock on /dev/sda1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
… and the dmesg
entries are: http://pastebin.com/QZsjxgyj
I think that this means that the ext4 filesystem was corrupted by the failed write.
Has anyone managed to use a Samsung 850 EVO successfully with a Jetson TX1?
Is there anything that I should try that might resolve this problem?
I noticed in the dmesg
logs from powering up the Jetson that there was something about tegra-sata:
[ 4.017569] tegra-sata tegra-sata.0: AHCI 0001.0301 32 slots 2 ports 3 Gbps 0x1 impl TEGRA-SATA mode
[ 4.029537] tegra-sata tegra-sata.0: flags: 64bit ncq sntf pm led pmp pio slum part sadm apst
[ 4.042420] scsi0 : tegra-sata
[ 4.047508] scsi1 : tegra-sata
Do I need to configure tegra-sata to not use NCQ?
Daniel