ZFS Seagate ST6000DM003-2CY186 "flapping". Disconnecting and reconnecting randomly.

I know it's an SMR drive and that's a bad idea for ZFS or any RAID
but it's a stopgap to hopefully keep the array redundant until prices get
less crazy. Please don't just say "don't use SMR", I'd really prefer not to.

I have a ST6000DM003-2CY186 and it keeps dropping off the controller
with the messages below showing up in dmesg. How can I
figure out more specifically why it's dropping and get it to stay?

I've had the drive in 2 different bays in my hotswap cage, used 2 different
cables connected to 2 different motherboard ports and now having it running
next to the server directly attached to take the hotswap bay out of the
picture. I set a loader hint to downgrade to SATA 2 but that hasn't helped
either. I'm very much running out of ideas. What really drives me crazy is
that (other than the total time taken because of the internal SMR
housekeeping) it made it through the initial resilver without a problem.
There doesn't seem to be much of a pattern to the drops. It doesn't
correlate with any activity or specific span of lack of activity that I've
been able to identify.
Code:
ada1 at ahcich3 bus 0 scbus3 target 0 lun 0
ada1: <ST6000DM003-2CY186 0001> s/n ZF200T9W detached
(ada1:ahcich3:0:0:0): Periph destroyed
ada1 at ahcich3 bus 0 scbus3 target 0 lun 0
ada1: <ST6000DM003-2CY186 0001> ACS-3 ATA SATA 3.x device
ada1: Serial Number ZF200T9W
ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 5723166MB (11721045168 512 byte sectors)
ada1: quirks=0x1<4K>
The SMART data is:

Code:
smartctl 7.5 2025-04-30 r5714 [FreeBSD 15.0-RELEASE-p12 amd64] (local build)
Copyright (C) 2002-25, Bruce Allen, Christian Franke, [URL='http://www.smartmontools.org']www.smartmontools.org[/URL]

=== START OF INFORMATION SECTION ===
Model Family:     Seagate BarraCuda 3.5 (SMR)
Device Model:     ST6000DM003-2CY186
Serial Number:    ZF200T9W
LU WWN Device Id: 5 000c50 0a4eaf8d3
Firmware Version: 0001
User Capacity:    6,001,175,126,016 bytes [6.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5425 rpm
Device is:        In smartctl database 7.5/5706
ATA Version is:   ACS-3 T13/2161-D revision 5
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Mon Aug 10 17:42:31 2026 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                                       was completed without error.
                                       Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                       without error or no self-test has ever
                                       been run.
Total time to complete Offline
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x7b) SMART execute Offline immediate.
                                       Auto Offline data collection on/off support.
                                       Suspend Offline collection upon new
                                       command.
                                       Offline surface scan supported.
                                       Self-test supported.
                                       Conveyance Self-test supported.
                                       Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                       power-saving mode.
                                       Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                       General Purpose Logging supported.
Short self-test routine
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        ( 798) minutes.
Conveyance self-test routine
recommended polling time:        (   2) minutes.
SCT capabilities:              (0x30a5) SCT Status supported.
                                       SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
 1 Raw_Read_Error_Rate     0x000f   073   064   006    Pre-fail  Always       -       20195647
 3 Spin_Up_Time            0x0003   098   092   000    Pre-fail  Always       -       0
 4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       85
 5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
 7 Seek_Error_Rate         0x000f   070   060   045    Pre-fail  Always       -       10214727
 9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       726h+57m+29.053s
10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       63
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0 0 2
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   060   044   040    Old_age   Always       -       40 (Min/Max 39/40)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       94
193 Load_Cycle_Count        0x0032   100   100   000    Old_age   Always       -       315
194 Temperature_Celsius     0x0022   040   056   000    Old_age   Always       -       40 (0 16 0 0 0)
195 Hardware_ECC_Recovered  0x001a   073   064   000    Old_age   Always       -       20195647
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       237h+57m+03.832s
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       8646277300
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       888924720

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
   1        0        0  Not_testing
   2        0        0  Not_testing
   3        0        0  Not_testing
   4        0        0  Not_testing
   5        0        0  Not_testing
Selective self-test flags (0x0):
 After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

The above only provides legacy SMART information - try 'smartctl -x' for more

--
Jonathan
 
It's just disconnecting, no errors before that? Might be a cable or power issue. 197 and 198 are still all zero, so that's good. 726 power on hours isn't much either. Might still want to do a long test with smartctl(8) though.
 
The disk is fine. Your HBA controller drops the disk when the disk is too slow to respond to command. That's why in RAID setup you need to use disk which have support for time limiter error reporting (TLER) like WD Gold, Ultrastar or error recovery control (ERC) like ES ES2 (Seagate Exos disks).

There's not much what you can do here. You can check if this disk support ERC using smartctrl and if it does to set it's timeout to 7sec.
 
So... it turns out when I was doing all the physical troubleshooting I had forgotten which hot swap bay it was in and grabbed the wrong drive. I've had it plugged in directly (not via the hostwap bay) for days and it's been fine, no dropouts at all. It was definitely slow to resilver being an SMR drive but it looks like the dropping out issue was the physical connection being flaky rather than the controller timing out.
 
Back
Top