Hi,
I don't understand why SSD's that have 512 sector size (logical and physical) have quirks=0x1<4K> mode? For example Samsung SSD 840-850 family.
Gpart thinking that SSD is 4k, then zfs thinking that SSD is 4k (ashift: 12). TRIM working really slow with deleting 20GB+ files (L(q) in gstat around million). ZFS cache going crazy if SSD used as cache dev when filled all space (showing 16.0E size and fill more and more).
I found destruction commit https://lists.freebsd.org/pipermail/svn-src-head/2014-October/063844.html that made by some "sbruno". After erasing this code and kernel recompile all started to working fine as must be with 512 byte sectors.
So where logic to do 4k quirks for 512 sector size SSD's?
Stock kernel output:
I don't understand why SSD's that have 512 sector size (logical and physical) have quirks=0x1<4K> mode? For example Samsung SSD 840-850 family.
Gpart thinking that SSD is 4k, then zfs thinking that SSD is 4k (ashift: 12). TRIM working really slow with deleting 20GB+ files (L(q) in gstat around million). ZFS cache going crazy if SSD used as cache dev when filled all space (showing 16.0E size and fill more and more).
I found destruction commit https://lists.freebsd.org/pipermail/svn-src-head/2014-October/063844.html that made by some "sbruno". After erasing this code and kernel recompile all started to working fine as must be with 512 byte sectors.
So where logic to do 4k quirks for 512 sector size SSD's?
Stock kernel output:
Code:
root@:~ # uname -a
FreeBSD 10.2-RELEASE FreeBSD 10.2-RELEASE #0 r286666: Wed Aug 12 15:26:37 UTC 2015 root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
root@:~ # dmesg | grep ada0
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <Samsung SSD 850 PRO 1TB EXM02B6Q> ACS-2 ATA SATA 3.x device
ada0: Serial Number S252NXAGA08719F
ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 512bytes)
ada0: Command Queueing enabled
ada0: 976762MB (2000409264 512 byte sectors: 16H 63S/T 16383C)
ada0: quirks=0x1<4K>
ada0: Previously was known as ad4
root@:~ # camcontrol identify ada0
pass0: <Samsung SSD 850 PRO 1TB EXM02B6Q> ACS-2 ATA SATA 3.x device
pass0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 512bytes)
protocol ATA/ATAPI-9 SATA 3.x
device model Samsung SSD 850 PRO 1TB
firmware revision EXM02B6Q
serial number S252NXAGA08719F
WWN 50025388400d00ff
cylinders 16383
heads 16
sectors/track 63
sector size logical 512, physical 512, offset 0
LBA supported 268435455 sectors
LBA48 supported 2000409264 sectors
PIO supported PIO4
DMA supported WDMA2 UDMA6
media RPM non-rotating
Feature Support Enabled Value Vendor
read ahead yes yes
write cache yes yes
flush cache yes yes
overlap no
Tagged Command Queuing (TCQ) no no
Native Command Queuing (NCQ) yes 32 tags
NCQ Queue Management no
NCQ Streaming no
Receive & Send FPDMA Queued yes
SMART yes yes
microcode download yes yes
security yes no
power management yes yes
advanced power management no no
automatic acoustic management no no
media status notification no no
power-up in Standby no no
write-read-verify yes no 0/0x0
unload no no
general purpose logging yes yes
free-fall no no
Data Set Management (DSM/TRIM) yes
DSM - max 512byte blocks yes 8
DSM - deterministic read no
Host Protected Area (HPA) yes no 2000409264/2000409264
HPA - Security no