I am having problems with smartctl from smartmontools-6.2_2 failing with the message: SMART STATUS RETURN: incomplete response, ATA output registers missing with a SATA disk connected like this: isci0: <Intel(R) C600 Series Chipset SAS Controller (SATA mode)> port 0x2100-0x21ff,0x2000-0x20ff mem 0x38007f800000-0x38007f807fff,0x38007f000000-0x38007f7fffff irq 26 at device 0.0 on pci3 da2 at isci0 bus 0 scbus0 target 2 lun 0 da2: <ATA ST4000NM0033-9ZM SN03> Fixed Direct Access SCSI-5 device da2: Serial Number Z1Z341YS da2: 300.000MB/s transfers da2: Command Queueing enabled da2: 3815447MB (7814037168 512 byte sectors: 255H 63S/T 486401C) The machine is running 10.0-RELEASE-p6 with the isci patches r265570, r265571 and r268073 but the problem also occurs when running from FreeBSD-11.0-CURRENT-amd64-20140701-r268111-memstick-uefi.img. I suspect a bug in the kernel or driver because the same version of smartctl works when the machine is booted from a CentOS 6.3 LiveCD. Here is the full output from smartctl (error at the end): $ /usr/local/sbin/smartctl -H -r ioctl,2 /dev/da2 smartctl 6.2 2014-02-18 r3874 [FreeBSD 10.0-RELEASE-p6 amd64] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org [inquiry: 12 00 00 00 24 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=36: 00 00 00 05 02 3e 00 00 02 41 54 41 20 20 20 20 20 10 53 54 34 30 30 30 4e 4d 30 30 33 33 2d 39 5a 4d 20 53 4e 30 33 status=0x0 [ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 5a 0c ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 10 00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 31 5a 33 5a 31 34 53 59 00 00 00 00 00 00 4e 53 30 33 30 20 20 20 20 54 53 30 34 30 30 4d 4e 30 30 40 33 33 39 2d 4d 5a 37 31 20 30 20 20 20 20 20 20 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 10 80 60 00 40 00 2f 00 40 00 02 00 02 07 00 ff 3f 10 00 70 3f 00 10 fc fb 00 10 00 ff ff ff 0f 00 00 07 00 80 03 00 78 00 78 00 78 00 78 00 00 00 00 00 00 00 90 00 00 00 00 00 00 1f 00 0e 8d 04 00 cc 00 40 00 a0 f0 03 00 00 6b 34 01 75 63 61 69 34 01 b4 63 61 b0 7f 40 e9 00 e9 00 00 00 fe ff 00 00 00 fe 00 00 c0 00 00 00 00 00 00 00 00 b0 be c0 d1 01 00 00 00 d0 00 00 00 00 00 40 00 00 00 50 00 c5 e8 65 39 95 e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 de 40 f0 9c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 status=0x0 REPORT-IOCTL: Device=/dev/da2 Command=IDENTIFY DEVICE Input: FR=...., SC=0x01, LL=...., LM=...., LH=...., DEV=...., CMD=0xec IN [ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 5a 0c ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 10 00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 31 5a 33 5a 31 34 53 59 00 00 00 00 00 00 4e 53 30 33 30 20 20 20 20 54 53 30 34 30 30 4d 4e 30 30 40 33 33 39 2d 4d 5a 37 31 20 30 20 20 20 20 20 20 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 10 80 60 00 40 00 2f 00 40 00 02 00 02 07 00 ff 3f 10 00 70 3f 00 10 fc fb 00 10 00 ff ff ff 0f 00 00 07 00 80 03 00 78 00 78 00 78 00 78 00 00 00 00 00 00 00 90 00 00 00 00 00 00 1f 00 0e 8d 04 00 cc 00 40 00 a0 f0 03 00 00 6b 34 01 75 63 61 69 34 01 b4 63 61 b0 7f 40 e9 00 e9 00 00 00 fe ff 00 00 00 fe 00 00 c0 00 00 00 00 00 00 00 00 b0 be c0 d1 01 00 00 00 d0 00 00 00 00 00 40 00 00 00 50 00 c5 e8 65 39 95 e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 de 40 f0 9c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 status=0x0 [Duration: 0.001s] REPORT-IOCTL: Device=/dev/da2 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: 31 5a 33 5a 31 34 53 59 00 00 00 00 00 00 4e 53 |1Z3Z14SY......NS| 048-063: 33 30 20 20 20 20 54 53 30 34 30 30 4d 4e 30 30 |30 TS0400MN00| 064-079: 33 33 39 2d 4d 5a 37 31 20 30 20 20 20 20 20 20 |339-MZ71 0 | 080-095: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 10 80 | ..| 096-111: 00 40 00 2f 00 40 00 02 00 02 07 00 ff 3f 10 00 |.@./.@.......?..| 112-127: 3f 00 10 fc fb 00 10 00 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 0e 8d 04 00 cc 00 40 00 |..............@.| 160-175: f0 03 00 00 6b 34 01 75 63 61 69 34 01 b4 63 61 |....k4.ucai4..ca| 176-191: 7f 40 e9 00 e9 00 00 00 fe ff 00 00 00 fe 00 00 |.@..............| 192-207: 00 00 00 00 00 00 00 00 b0 be c0 d1 01 00 00 00 |................| 208-223: 00 00 00 00 00 40 00 00 00 50 00 c5 e8 65 39 95 |.....@...P...e9.| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 de 40 |...............@| 240-255: 9c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............| 256-271: 21 00 b0 be c0 d1 b0 be c0 d1 20 20 02 00 40 01 |!......... ..@.| 272-287: 08 01 00 50 06 3c 0a 3c 00 00 3c 00 00 00 08 00 |...P.<.<..<.....| 288-303: 00 00 00 00 ff 7d 80 02 00 00 70 00 08 00 00 00 |.....}....p.....| 304-319: 00 00 00 00 00 00 00 00 00 00 8d 00 00 63 48 88 |.............cH.| 320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 336-351: 02 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 bd 50 00 00 |.............P..| 416-431: 00 00 00 40 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 20 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 ed |................| ===== [IDENTIFY DEVICE] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/da2 Command=SMART READ ATTRIBUTE VALUES Input: FR=0xd0, SC=0x01, LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN [ata pass-through(16): 85 08 0e 00 d0 00 01 00 00 00 4f 00 c2 00 b0 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 0a 00 01 0f 00 52 3f 44 7b 99 0a 00 00 00 03 03 10 00 5d 5d 00 00 00 00 00 00 00 04 32 00 64 64 0b 20 00 00 00 00 00 00 05 33 00 64 64 00 00 00 00 00 30 00 00 07 0f 00 4b 3c bb 21 23 02 00 00 00 09 32 40 00 64 64 06 01 00 00 00 00 00 0a 13 00 64 64 00 50 00 00 00 00 00 00 0c 32 00 64 64 0b 00 00 00 00 60 00 00 b8 32 00 64 64 00 00 00 00 00 00 00 bb 32 70 00 64 64 00 00 00 00 00 00 00 bc 32 00 64 64 00 80 00 00 00 00 00 00 bd 3a 00 64 64 00 00 00 00 00 90 00 00 be 22 00 3d 3b 27 00 1a 29 00 00 00 bf 32 a0 00 64 64 00 00 00 00 00 00 00 c0 32 00 64 64 0a b0 00 00 00 00 00 00 c1 32 00 64 64 15 00 00 00 00 c0 00 00 c2 22 00 27 29 27 00 00 00 17 00 00 c3 1a d0 00 16 03 44 7b 99 0a 00 00 00 c5 12 00 64 64 00 e0 00 00 00 00 00 00 c6 10 00 64 64 00 00 00 00 00 f0 00 00 c7 3e 00 c8 c8 00 00 00 00 00 00 00 00 00 status=0x0 [Duration: 0.066s] REPORT-IOCTL: Device=/dev/da2 Command=SMART READ ATTRIBUTE VALUES returned 0 ===== [SMART READ ATTRIBUTE VALUES] DATA START (BASE-16) ===== 000-015: 0a 00 01 0f 00 52 3f 44 7b 99 0a 00 00 00 03 03 |.....R?D{.......| 016-031: 00 5d 5d 00 00 00 00 00 00 00 04 32 00 64 64 0b |.]]........2.dd.| 032-047: 00 00 00 00 00 00 05 33 00 64 64 00 00 00 00 00 |.......3.dd.....| 048-063: 00 00 07 0f 00 4b 3c bb 21 23 02 00 00 00 09 32 |.....K<.!#.....2| 064-079: 00 64 64 06 01 00 00 00 00 00 0a 13 00 64 64 00 |.dd..........dd.| 080-095: 00 00 00 00 00 00 0c 32 00 64 64 0b 00 00 00 00 |.......2.dd.....| 096-111: 00 00 b8 32 00 64 64 00 00 00 00 00 00 00 bb 32 |...2.dd........2| 112-127: 00 64 64 00 00 00 00 00 00 00 bc 32 00 64 64 00 |.dd........2.dd.| 128-143: 00 00 00 00 00 00 bd 3a 00 64 64 00 00 00 00 00 |.......:.dd.....| 144-159: 00 00 be 22 00 3d 3b 27 00 1a 29 00 00 00 bf 32 |...".=;'..)....2| 160-175: 00 64 64 00 00 00 00 00 00 00 c0 32 00 64 64 0a |.dd........2.dd.| 176-191: 00 00 00 00 00 00 c1 32 00 64 64 15 00 00 00 00 |.......2.dd.....| 192-207: 00 00 c2 22 00 27 29 27 00 00 00 17 00 00 c3 1a |...".')'........| 208-223: 00 16 03 44 7b 99 0a 00 00 00 c5 12 00 64 64 00 |...D{........dd.| 224-239: 00 00 00 00 00 00 c6 10 00 64 64 00 00 00 00 00 |.........dd.....| 240-255: 00 00 c7 3e 00 c8 c8 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 82 00 50 02 00 7b |............P..{| 368-383: 03 00 01 00 01 ff 02 e9 01 00 00 00 00 00 00 00 |................| 384-399: 00 00 05 00 00 00 00 00 03 08 08 08 08 07 08 08 |................| 400-415: 08 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 |................| 416-431: 00 00 00 00 00 00 00 00 b9 55 b7 26 dc 00 00 00 |.........U.&....| 432-447: 00 00 00 00 01 00 08 00 26 b3 2f 66 00 00 00 00 |........&./f....| 448-463: 8d eb b5 08 00 00 00 00 00 00 00 00 ff ff ff ff |................| 464-479: 00 00 00 00 00 00 00 00 1c 15 00 00 01 00 00 00 |................| 480-495: 01 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 dc |................| ===== [SMART READ ATTRIBUTE VALUES] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/da2 Command=SMART READ ATTRIBUTE THRESHOLDS Input: FR=0xd1, SC=0x01, LL=0x01, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN [ata pass-through(16): 85 08 0e 00 d1 00 01 00 01 00 4f 00 c2 00 b0 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 01 00 01 2c 00 00 00 00 00 00 00 00 00 00 03 00 10 00 00 00 00 00 00 00 00 00 00 04 14 00 00 00 00 20 00 00 00 00 00 00 05 0a 00 00 00 00 00 00 00 00 30 00 00 07 1e 00 00 00 00 00 00 00 00 00 00 09 00 40 00 00 00 00 00 00 00 00 00 00 0a 61 00 00 00 00 50 00 00 00 00 00 00 0c 14 00 00 00 00 00 00 00 00 60 00 00 b8 63 00 00 00 00 00 00 00 00 00 00 bb 00 70 00 00 00 00 00 00 00 00 00 00 bc 00 00 00 00 00 80 00 00 00 00 00 00 bd 00 00 00 00 00 00 00 00 00 90 00 00 be 2d 00 00 00 00 00 00 00 00 00 00 bf 00 a0 00 00 00 00 00 00 00 00 00 00 c0 00 00 00 00 00 b0 00 00 00 00 00 00 c1 00 00 00 00 00 00 00 00 00 c0 00 00 c2 00 00 00 00 00 00 00 00 00 00 00 c3 00 d0 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00 e0 00 00 00 00 00 00 c6 00 00 00 00 00 00 00 00 00 f0 00 00 c7 00 00 00 00 00 00 00 00 00 00 00 00 00 status=0x0 [Duration: 0.009s] REPORT-IOCTL: Device=/dev/da2 Command=SMART READ ATTRIBUTE THRESHOLDS returned 0 ===== [SMART READ ATTRIBUTE THRESHOLDS] DATA START (BASE-16) ===== 000-015: 01 00 01 2c 00 00 00 00 00 00 00 00 00 00 03 00 |...,............| 016-031: 00 00 00 00 00 00 00 00 00 00 04 14 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 05 0a 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 07 1e 00 00 00 00 00 00 00 00 00 00 09 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 0a 61 00 00 00 00 |...........a....| 080-095: 00 00 00 00 00 00 0c 14 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 b8 63 00 00 00 00 00 00 00 00 00 00 bb 00 |...c............| 112-127: 00 00 00 00 00 00 00 00 00 00 bc 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 bd 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 be 2d 00 00 00 00 00 00 00 00 00 00 bf 00 |...-............| 160-175: 00 00 00 00 00 00 00 00 00 00 c0 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 c1 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 c2 00 00 00 00 00 00 00 00 00 00 00 c3 00 |................| 208-223: 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 c6 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 c7 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 9e |................| ===== [SMART READ ATTRIBUTE THRESHOLDS] DATA END (512 Bytes) ===== === START OF READ SMART DATA SECTION === REPORT-IOCTL: Device=/dev/da2 Command=SMART STATUS CHECK Input: FR=0xda, SC=...., LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 [ata pass-through(16): 85 06 2c 00 da 00 00 00 00 00 4f 00 c2 00 b0 00 ] CAM status=0x8c, SCSI status=0x2, resid=0x0 sense_len=0x20, sense_resid=0xe >>> Sense buffer, len=18: 00 f0 00 01 00 50 40 00 00 00 c2 4f 00 00 1d 00 00 10 00 00 status=0x2: sense_key=0x1 asc=0x0 ascq=0x1d [Duration: 0.016s] SMART STATUS RETURN: incomplete response, ATA output registers missing REPORT-IOCTL: Device=/dev/da2 Command=SMART STATUS CHECK returned -1 errno=78 [Function not implemented] SMART overall-health self-assessment test result: PASSED Warning: This result is based on an Attribute check.
Over to maintainers.
Unrelated to iSCSI.
> >>> Sense buffer, len=18: > 00 f0 00 01 00 50 40 00 00 00 c2 4f 00 00 1d 00 00 > 10 00 00 > status=0x2: sense_key=0x1 asc=0x0 ascq=0x1d > [Duration: 0.016s] > SMART STATUS RETURN: incomplete response, ATA output registers missing This is an upstream smartctl issue. The sense data above uses the fixed format sense data format which returns ATA output registers from SAT ATA PASS-THROUGH cmd: f0 = VALID | RESPONSE CODE: FIXED FORMAT 00 = ... 01 = ... | SENSE KEY: RECOVERED ERROR 00 = ATA ERROR register 50 = ATA STATUS register 40 = ATA DEVICE register 00 = ATA COUNT register 00 = ... 00 = ... c2 = ATA LBA HIGH register ] SMART ... 4f = ATA LBA MID register ] ... STATUS OK 00 = ATA LBA LOW register 00 = ASC ] ATA PASS THROUGH ... 1d = ASCQ ] ... INFORMATION AVAILABLE ... This format is a late addition to (or: fix of) SAT standard and not yet detected by smartmontools. See: http://www.smartmontools.org/ticket/296
Created attachment 154205 [details] Compatibility patch written by Jim Harris Despite the smartctl ticket, you might consider the attached compatibility patch written by Jim Harris (see http://lists.freebsd.org/pipermail/freebsd-scsi/2014-July/006382.html), which has worked well for me in FreeBSD 10.0.
recent commit in smartmontools project adds support for the SAT ATA PASS-THROUGH fixed format sense data. Please try to build it from SVN and report if it works.
It still fails in the same way with smartctl svn. The machine is now running unpatched 10.1-RELEASE-p13. According to http://lists.freebsd.org/pipermail/freebsd-scsi/2014-July/006383.html on the same thread as the compatibility patch, the kernel is returning the wrong value for byte 7 in the fixed format sense data buffer, which should be 10 rather than 0. He seems to have a good point, so it looks like sati_scsi_fixed_sense_data_construct and sati_scsi_common_fixed_sense_construct need to byte 7, like sati_scsi_common_descriptor_sense_construct and sati_scsi_descriptor_sense_data_construct do. This is a production machine, so I'm not confident enough to just change this without additional input from someone who knows about this stuff in FreeBSD.
Created attachment 159976 [details] Patch to set byte 7 (ADDITIONAL SENSE LENGTH) of fixed format sense data Here is a new patch that fixes the kernel to work with smartctl. It also allows camcontrol to report the correct error when trying to eject the fixed disk with camcontrol eject 0:0:0 -v. This patch does two things: 1) Sets the correct value for byte 7 (ADDITIONAL SENSE LENGTH) of the fixed format sense data in sati_scsi_fixed_sense_data_construct and sati_scsi_common_fixed_sense_construct. 2) Sets the lba fields correctly for the ATA PASS-THROUGH response in sati_passthrough_construct_sense (the bytes were in the wrong order). This is needed for smartctl.
FWIW, I think I've run into this on one of my systems running FreeBSD 10.2-RELEASE-p7 amd64 and smartctl 6.4 2015-06-04 r4109. Unfortunately, this system is in production, so I can't try the kernel patch in this bug report, but wanted to pass along this info in case it was helpful. If I find another system exhibiting this behavior or am able to test the kernel patch on this system, I'll update again. The hardware looks like this (from dmesg): ses0 at ahciem0 bus 0 scbus7 target 0 lun 0 ses0: <AHCI SGPIO Enclosure 1.00 0001> SEMB S-E-S 2.00 device ses0: SEMB SES Device da0 at isci0 bus 0 scbus0 target 0 lun 0 da0: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device da1 at isci0 bus 0 scbus0 target 1 lun 0 da1: <ATA INTEL SSDSC2BA10 0270> Fixed Direct Access SCSI-5 device da0: Serial Number BTTV4494014Z100FGN da0: 300.000MB/s transfers da0: Command Queueing enabled da0: 95396MB (195371568 512 byte sectors: 255H 63S/T 12161C) da2 at isci0 bus 0 scbus0 target 2 lun 0 da3 at isci0 bus 0 scbus0 target 3 lun 0 da2: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device da3: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device da1: Serial Number WD-WMC5K0D20LKL da1: 300.000MB/s transfers da1: Command Queueing enabled da1: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C) da2: Serial Number WD-WMC5K0D1AM6Y da3: Serial Number WD-WMC5K0DAKT6E da2: 300.000MB/s transfers da3: 300.000MB/s transfers da2: Command Queueing enabled da2: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C) da3: Command Queueing enabled da3: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C) Running smartctl -H on any of these devices shows this: # smartctl -H /dev/da0 smartctl 6.4 2015-06-04 r4109 [FreeBSD 10.2-RELEASE-p7 amd64] (local build) Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART Status not supported: Incomplete response, ATA output registers missing SMART overall-health self-assessment test result: PASSED Warning: This result is based on an Attribute check. Full output is: # smartctl -H -r ioctl,2 /dev/da0 smartctl 6.4 2015-06-04 r4109 [FreeBSD 10.2-RELEASE-p7 amd64] (local build) Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org [inquiry: 12 00 00 00 24 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=36: 00 00 00 05 02 3e 00 00 02 41 54 41 20 20 20 20 20 10 49 4e 54 45 4c 20 53 53 44 53 43 32 42 41 31 30 20 30 32 37 30 status=0x0 [ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 10 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34 20 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35 30 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44 40 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80 60 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00 70 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00 80 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00 90 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00 a0 fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61 b0 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00 c0 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00 d0 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40 f0 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 status=0x0 REPORT-IOCTL: Device=/dev/da0 Command=IDENTIFY DEVICE Input: FR=...., SC=0x01, LL=...., LM=...., LH=...., DEV=...., CMD=0xec IN [ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 10 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34 20 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35 30 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44 40 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80 60 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00 70 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00 80 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00 90 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00 a0 fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61 b0 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00 c0 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00 d0 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40 f0 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 status=0x0 [Duration: 0.001s] REPORT-IOCTL: Device=/dev/da0 Command=IDENTIFY DEVICE returned 0 ===== [IDENTIFY DEVICE] DATA START (BASE-16) ===== 000-015: 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 |@..?7.......?...| 016-031: 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34 |....TBVT444910Z4| 032-047: 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35 |01F0NG ......D5| 048-063: 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44 |1V2007NIET LSSSD| 064-079: 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20 |2CAB01G0 3 | 080-095: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80 | ..| 096-111: 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00 |.@./.@.......?..| 112-127: 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00 |?.......0"......| 128-143: 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00 |..x.x.x.x.0@....| 144-159: 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00 |............@.@.| 160-175: fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61 |....kt.ucait..ca| 176-191: 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00 |.@..............| 192-207: 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00 |........0"......| 208-223: 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d |.....`...U@.sK.]| 224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40 |..............\@| 240-255: 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............| 256-271: 21 00 1c 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: 03 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 352-367: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 368-383: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 384-399: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 400-415: 20 20 20 20 20 20 20 20 20 20 20 20 3d 00 00 00 | =...| 416-431: 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 |...@............| 432-447: 00 00 01 00 00 00 00 00 00 00 00 00 1f 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 01 00 ff ff 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 22 |..............."| ===== [IDENTIFY DEVICE] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE VALUES Input: FR=0xd0, SC=0x01, LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN [ata pass-through(16): 85 08 0e 00 d0 00 01 00 00 00 4f 00 c2 00 b0 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 01 00 05 32 00 64 64 00 00 00 00 00 00 00 09 32 10 00 64 64 c0 1d 00 00 00 00 00 0c 32 00 64 64 0c 20 00 00 00 00 00 00 aa 33 00 64 64 00 00 00 00 00 30 00 00 ab 32 00 64 64 00 00 00 00 00 00 00 ac 32 40 00 64 64 00 00 00 00 00 00 00 ae 32 00 64 64 08 50 00 00 00 00 00 00 af 33 00 64 64 66 02 a7 1e 2d 60 00 00 b7 32 00 64 64 00 00 00 00 00 00 00 b8 33 70 00 64 64 00 00 00 00 00 00 00 bb 32 00 64 64 00 80 00 00 00 00 00 00 be 22 00 50 4e 14 00 13 1c 00 90 00 00 c0 32 00 64 64 08 00 00 00 00 00 00 c2 22 a0 00 64 64 1b 00 00 00 00 00 00 c5 32 00 64 64 00 b0 00 00 00 00 00 00 c7 3e 00 64 64 00 00 00 00 00 c0 00 00 e1 32 00 64 64 9b 17 1f 00 00 00 00 e2 32 d0 00 64 64 14 08 00 00 00 00 00 e3 32 00 64 64 05 e0 00 00 00 00 00 00 e4 32 00 64 64 ec f8 06 00 00 f0 00 00 e8 33 00 64 64 00 00 00 00 00 00 00 e9 32 status=0x0 [Duration: 0.001s] REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE VALUES returned 0 ===== [SMART READ ATTRIBUTE VALUES] DATA START (BASE-16) ===== 000-015: 01 00 05 32 00 64 64 00 00 00 00 00 00 00 09 32 |...2.dd........2| 016-031: 00 64 64 c0 1d 00 00 00 00 00 0c 32 00 64 64 0c |.dd........2.dd.| 032-047: 00 00 00 00 00 00 aa 33 00 64 64 00 00 00 00 00 |.......3.dd.....| 048-063: 00 00 ab 32 00 64 64 00 00 00 00 00 00 00 ac 32 |...2.dd........2| 064-079: 00 64 64 00 00 00 00 00 00 00 ae 32 00 64 64 08 |.dd........2.dd.| 080-095: 00 00 00 00 00 00 af 33 00 64 64 66 02 a7 1e 2d |.......3.ddf...-| 096-111: 00 00 b7 32 00 64 64 00 00 00 00 00 00 00 b8 33 |...2.dd........3| 112-127: 00 64 64 00 00 00 00 00 00 00 bb 32 00 64 64 00 |.dd........2.dd.| 128-143: 00 00 00 00 00 00 be 22 00 50 4e 14 00 13 1c 00 |.......".PN.....| 144-159: 00 00 c0 32 00 64 64 08 00 00 00 00 00 00 c2 22 |...2.dd........"| 160-175: 00 64 64 1b 00 00 00 00 00 00 c5 32 00 64 64 00 |.dd........2.dd.| 176-191: 00 00 00 00 00 00 c7 3e 00 64 64 00 00 00 00 00 |.......>.dd.....| 192-207: 00 00 e1 32 00 64 64 9b 17 1f 00 00 00 00 e2 32 |...2.dd........2| 208-223: 00 64 64 14 08 00 00 00 00 00 e3 32 00 64 64 05 |.dd........2.dd.| 224-239: 00 00 00 00 00 00 e4 32 00 64 64 ec f8 06 00 00 |.......2.dd.....| 240-255: 00 00 e8 33 00 64 64 00 00 00 00 00 00 00 e9 32 |...3.dd........2| 256-271: 00 62 62 00 00 00 00 00 00 00 ea 32 00 64 64 00 |.bb........2.dd.| 272-287: 00 00 00 00 00 00 f1 32 00 64 64 9b 17 1f 00 00 |.......2.dd.....| 288-303: 00 00 f2 32 00 64 64 89 a5 01 00 00 00 00 00 00 |...2.dd.........| 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 79 |...............y| 368-383: 03 00 01 00 01 02 02 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 2e |................| ===== [SMART READ ATTRIBUTE VALUES] DATA END (512 Bytes) ===== REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE THRESHOLDS Input: FR=0xd1, SC=0x01, LL=0x01, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN [ata pass-through(16): 85 08 0e 00 d1 00 01 00 01 00 4f 00 c2 00 b0 00 ] CAM status=0x1, SCSI status=0x0, resid=0x0 Incoming data, len=512 [only first 256 bytes shown]: 00 01 00 05 00 00 00 00 00 00 00 00 00 00 00 09 00 10 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 20 00 00 00 00 00 00 aa 0a 00 00 00 00 00 00 00 00 30 00 00 ab 00 00 00 00 00 00 00 00 00 00 00 ac 00 40 00 00 00 00 00 00 00 00 00 00 ae 00 00 00 00 00 50 00 00 00 00 00 00 af 0a 00 00 00 00 00 00 00 00 60 00 00 b7 00 00 00 00 00 00 00 00 00 00 00 b8 5a 70 00 00 00 00 00 00 00 00 00 00 bb 00 00 00 00 00 80 00 00 00 00 00 00 be 00 00 00 00 00 00 00 00 00 90 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 c2 00 a0 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00 b0 00 00 00 00 00 00 c7 00 00 00 00 00 00 00 00 00 c0 00 00 e1 00 00 00 00 00 00 00 00 00 00 00 e2 00 d0 00 00 00 00 00 00 00 00 00 00 e3 00 00 00 00 00 e0 00 00 00 00 00 00 e4 00 00 00 00 00 00 00 00 00 f0 00 00 e8 0a 00 00 00 00 00 00 00 00 00 00 e9 00 status=0x0 REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE THRESHOLDS returned 0 ===== [SMART READ ATTRIBUTE THRESHOLDS] DATA START (BASE-16) ===== 000-015: 01 00 05 00 00 00 00 00 00 00 00 00 00 00 09 00 |................| 016-031: 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 |................| 032-047: 00 00 00 00 00 00 aa 0a 00 00 00 00 00 00 00 00 |................| 048-063: 00 00 ab 00 00 00 00 00 00 00 00 00 00 00 ac 00 |................| 064-079: 00 00 00 00 00 00 00 00 00 00 ae 00 00 00 00 00 |................| 080-095: 00 00 00 00 00 00 af 0a 00 00 00 00 00 00 00 00 |................| 096-111: 00 00 b7 00 00 00 00 00 00 00 00 00 00 00 b8 5a |...............Z| 112-127: 00 00 00 00 00 00 00 00 00 00 bb 00 00 00 00 00 |................| 128-143: 00 00 00 00 00 00 be 00 00 00 00 00 00 00 00 00 |................| 144-159: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 c2 00 |................| 160-175: 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00 |................| 176-191: 00 00 00 00 00 00 c7 00 00 00 00 00 00 00 00 00 |................| 192-207: 00 00 e1 00 00 00 00 00 00 00 00 00 00 00 e2 00 |................| 208-223: 00 00 00 00 00 00 00 00 00 00 e3 00 00 00 00 00 |................| 224-239: 00 00 00 00 00 00 e4 00 00 00 00 00 00 00 00 00 |................| 240-255: 00 00 e8 0a 00 00 00 00 00 00 00 00 00 00 e9 00 |................| 256-271: 00 00 00 00 00 00 00 00 00 00 ea 00 00 00 00 00 |................| 272-287: 00 00 00 00 00 00 f1 00 00 00 00 00 00 00 00 00 |................| 288-303: 00 00 f2 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 f1 |................| ===== [SMART READ ATTRIBUTE THRESHOLDS] DATA END (512 Bytes) ===== === START OF READ SMART DATA SECTION === REPORT-IOCTL: Device=/dev/da0 Command=SMART STATUS CHECK Input: FR=0xda, SC=...., LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 [ata pass-through(16): 85 06 2c 00 da 00 00 00 00 00 4f 00 c2 00 b0 00 ] CAM status=0x8c, SCSI status=0x2, resid=0x0 sense_len=0x20, sense_resid=0xe >>> Sense buffer, len=18: 00 f0 00 01 00 50 00 00 00 00 c2 4f 00 00 1d 00 00 10 00 00 status=0x2: sense_key=0x1 asc=0x0 ascq=0x1d [Duration: 0.001s] REPORT-IOCTL: Device=/dev/da0 Command=SMART STATUS CHECK returned -1 errno=78 [Incomplete response, ATA output registers missing] SMART Status not supported: Incomplete response, ATA output registers missing SMART overall-health self-assessment test result: PASSED Warning: This result is based on an Attribute check.
The ADDITIONAL SENSE LENGTH in byte 7 is 00 but should be at least 06: > >>> Sense buffer, len=18: > 00 f0 00 01 00 50 00 00 00 00 c2 4f 00 00 1d ... ------------------------------^^ [.....IGNORED.....] See also comment 6 and comment 7 above.
(In reply to martin from comment #7) I've been running with the patch to set byte 7 in 10.1 for 11 months without any problems. Would anyone like to merge it?
A commit references this bug: Author: jimharris Date: Wed Jul 6 20:48:43 UTC 2016 New revision: 302380 URL: https://svnweb.freebsd.org/changeset/base/302380 Log: isci: fix ATA PASSTHROUGH fixed sense data format PR: kern/191717 Submitted by: martin@lispworks.com Approved by: re (gjb) MFC after: 3 days Changes: head/sys/dev/isci/scil/sati_passthrough.c head/sys/dev/isci/scil/sati_util.c
There is a commit referencing this PR, but it's still not closed and has been inactive for some time. Closing the PR as fixed but feel free to re-open it if the issue hasn't been completely resolved. Thanks