#198 closed defect (fixed)
smartctl -l scterc is broken on FreeBSD
Reported by: | Alex Samorukov | Owned by: | somebody |
---|---|---|---|
Priority: | critical | Milestone: | Release 5.42 |
Component: | all | Version: | 5.41 |
Keywords: | freebsd | Cc: |
Description (last modified by )
SCT error counters query on freebsd is broken and always return strange numbers like:
SCT Error Recovery Control:
Read: 57344 (5734.4 seconds)
Write: 57344 (5734.4 seconds)
Tested with ata and atacam drivers. On the same hw but with Linux counters are correct. Set values seems to work correctly. Below is debug output from the smartctl on FreeBSD 8 with atacam driver:
bsd# smartctl -l scterc /dev/ada1 smartctl 5.41 2011-06-09 r3365 [FreeBSD 8.2-STABLE amd64] (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net SCT Error Recovery Control: Read: 57344 (5734.4 seconds) Write: 57344 (5734.4 seconds) bsd# smartctl -l scterc /dev/ada1 -r ioctl,99 smartctl 5.41 2011-06-09 r3365 [FreeBSD 8.2-STABLE amd64] (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net REPORT-IOCTL: Device=/dev/ada1 Command=IDENTIFY DEVICE Input: FR=...., SC=0x01, LL=...., LM=...., LH=...., DEV=...., CMD=0xec IN Output: ERR=0x00, SC=0x00, LL=0x00, LM=0x00, LH=0x00, DEV=...., STS=.... REPORT-IOCTL: Device=/dev/ada1 Command=IDENTIFY DEVICE returned 0 ===== [IDENTIFY DEVICE] DATA START (BASE-16) ===== 000-015: 5a 0c ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 |Z..?7.......?...| 016-031: 00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 |.... | 032-047: 56 36 46 4d 41 31 4c 36 00 00 00 80 04 00 43 43 |V6FMA1L6......CC| 048-063: 38 33 20 20 20 20 54 53 33 33 30 32 31 34 41 38 |83 TS330214A8| 064-079: 20 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | S | 080-095: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 10 80 | ..| 096-111: 00 00 00 2f 00 40 00 02 00 02 07 00 ff 3f 10 00 |.../.@.......?..| 112-127: 3f 00 10 fc fb 00 10 01 ff ff ff 0f 00 00 07 00 |?...............| 128-143: 03 00 78 00 78 00 78 00 78 00 00 00 00 00 00 00 |..x.x.x.x.......| 144-159: 00 00 00 00 00 00 1f 00 06 05 00 00 48 00 40 00 |............H.@.| 160-175: f0 01 29 00 6b 34 01 7f 63 41 69 34 01 be 63 41 |..).k4..cAi4..cA| 176-191: 7f 40 1f 00 1f 00 00 00 fe ff 00 00 00 fe 00 00 |.@..............| 192-207: 00 00 00 00 00 00 00 00 b0 ea 42 25 00 00 00 00 |..........B%....| 208-223: 00 00 00 00 00 00 00 00 00 50 00 c5 88 27 74 a9 |.........P...'t.| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1e 40 |...............@| 240-255: 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............| 256-271: 29 00 b0 ea 42 25 b0 ea 42 25 20 20 02 00 40 01 |)...B%..B% ..@.| 272-287: 00 01 00 50 06 3c 0a 3c 00 00 3c 00 00 00 08 00 |...P.<.<..<.....| 288-303: 00 00 00 00 4f 00 80 02 00 00 00 00 08 00 00 00 |....O...........| 304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 3f 00 98 |.............?..| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 400-415: 00 00 00 00 00 00 00 00 00 00 00 00 3f 10 00 00 |............?...| 416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 432-447: 00 00 20 1c 00 00 00 00 00 00 00 00 10 10 00 00 |.. .............| 448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a5 b3 |................| ===== [IDENTIFY DEVICE] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG InputParameter=224 Input: FR=0xd5, SC=0x01, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN Output: ERR=0x00, SC=0x00, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., STS=.... REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG returned 0 ===== [SMART READ LOG] DATA START (BASE-16) ===== 000-015: 03 00 0a 02 01 00 00 00 00 00 00 00 00 00 00 00 |................| 016-031: 03 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 080-095: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 112-127: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 160-175: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 00 00 00 00 00 00 21 17 21 12 2f 00 00 00 |........!.!./...| 208-223: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 256-271: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 272-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 288-303: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| ===== [SMART READ LOG] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG InputParameter=224 Input: FR=0xd5, SC=0x01, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN Output: ERR=0x00, SC=0x00, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., STS=.... REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG returned 0 ===== [SMART READ LOG] DATA START (BASE-16) ===== 000-015: 03 00 0a 02 01 00 00 00 00 00 00 00 00 00 00 00 |................| 016-031: 03 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 080-095: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 112-127: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 160-175: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 00 00 00 00 00 00 21 17 21 12 2f 00 00 00 |........!.!./...| 208-223: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 256-271: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 272-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 288-303: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| ===== [SMART READ LOG] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG InputParameter=224 Input: FR=0xd5, SC=0x01, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN Output: ERR=0x00, SC=0x00, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., STS=.... REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG returned 0 ===== [SMART READ LOG] DATA START (BASE-16) ===== 000-015: 03 00 0a 02 01 00 00 00 00 00 00 00 00 00 00 00 |................| 016-031: 03 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 080-095: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 112-127: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 160-175: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 00 00 00 00 00 00 21 17 21 12 2f 00 00 00 |........!.!./...| 208-223: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 256-271: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 272-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 288-303: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| ===== [SMART READ LOG] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG InputParameter=224 Input: FR=0xd5, SC=0x01, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN Output: ERR=0x00, SC=0x00, LL=0xe0, LM=0x4f, LH=0xc2, DEV=...., STS=.... REPORT-IOCTL: Device=/dev/ada1 Command=SMART READ LOG returned 0 ===== [SMART READ LOG] DATA START (BASE-16) ===== 000-015: 03 00 0a 02 01 00 00 00 00 00 00 00 00 00 00 00 |................| 016-031: 03 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 080-095: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 112-127: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 160-175: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 00 00 00 00 00 00 21 17 21 12 2f 00 00 00 |........!.!./...| 208-223: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 256-271: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 272-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 288-303: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| ===== [SMART READ LOG] DATA END (512 Bytes) ===== SCT Error Recovery Control: Read: 57344 (5734.4 seconds) Write: 57344 (5734.4 seconds)
Change History (7)
comment:1 by , 13 years ago
Description: | modified (diff) |
---|---|
Keywords: | freebsd added |
comment:2 by , 13 years ago
comment:3 by , 13 years ago
It seems that you absolutely right, values are just copied. Below is debug output - before request and after it data is the same. I will contact upstream about this
bsd# ./smartctl /dev/ada1 -l scterc smartctl 5.42 2011-09-12 r3416 [FreeBSD 8.2-STABLE amd64] (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net (pass1:ahcich4:0:0:0): ATA_IDENTIFY. ACB: ec 00 00 00 00 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): ATA_IDENTIFY. ACB: ec 00 00 00 00 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d6 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d6 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d6 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d6 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request is in progress (pass1:ahcich4:0:0:0): SMART. ACB: b0 d5 e0 4f c2 40 00 00 00 00 01 00 (pass1:ahcich4:0:0:0): CAM status: CCB request completed without error SCT Error Recovery Control: Read: 57347 (5734.7 seconds) Write: 57347 (5734.7 seconds)
comment:4 by , 13 years ago
Bug is fixed for atacam driver (adaX devices). Need to investigate if its possible to fix for ata, but probably not.
comment:5 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Bug is fixed for ata driver as well by adding ATA_CMD_CONTROL flag to the ATA_CMD_READ and ATA_CMD_WRITE requests.
comment:7 by , 13 years ago
Milestone: | → Release 5.42 |
---|
Like SMART STATUS and unlike all other commands the SCT READ ERC relies on ATA output register values. This is often not fully supported by ATA pass-through I/O-controls.
The 16-bit ERC value is returned by the command SMART WRITE LOG 0xe0 (SCT Command/Status) in COUNT and LBA_LOW register. Unfortunately this command is missing in the debug output (open issue, see ticket #55).
The debug output from SMART READ LOG suggests that the FreeBSD ATA pass-through I/O-control may not return the real LBA output value but returns the input value unchanged:
If this is the case the SMART STATUS is also broken, because "unchanged" would always fake a GOOD status.
To track down the problem I would suggest to add a some temporary debug output in os_freebsd.cpp to examine
request.u.ata.count
andrequest.u.ata.lba
after the I/O-control here.