如何对STIO进行解码:发现挂起的cmd
适用场景
- ONTAP 9及更高版本
- ONTAP 8.3.x
- ONTAP 8.2 7-模式
问题解答
STIO
(SCSITarget I/O)消息是SCSI协议级错误、用于帮助、解释和诊断根发生原因中的SCSI相关问题。- 如果FC目标适配器在处理期间遇到SCSI命令错误、则会 记录在EMS/消息中。
STIO
消息具有不同的含义、可根据命令挂起时检查条件的状态进行解码。
EMS日志示例
STATE 5 : Mon Apr 18 00:37:03 EDT [controller1: fct_tpd_thread_6: fcp.io.status:debug]: STIO Adapter:0a, found hung cmd:0xffffff0200ef83a0(state=5, flags=0x0, ctio_sent=1/1,RecvExAddr=0x127524, OX_ID=0x43xx, RX_ID=0xffff,SID=0x10axx, Cmd[2A])
STATE 8: Tue Aug 16 11:33:01 MST [controller2: fct_tpd_thread_2: fcp.io.status:debug]: STIO Adapter:0f, found hung cmd:0xffffff02023592b0(state=8, flags=0x1, ctio_sent=0/1,RecvExAddr=0x1222b0, OX_ID=0x5dxx, RX_ID=0xffff,SID=0x400xx, Cmd[88])
如上所述、每个状态都有不同的含义、可以使用下表进行解码。
状况: | 原因 |
1 | FREE |
2 | PREPROCESS |
3 | SCSITCB_WAIT |
4 | DATAIN_SENT |
5 | DATAOUT_WAIT |
6 | DATAOUT_RCVD,STIO |
7 | RESP_SENT |
8 | DATAINRESP_SENT |
9 | DATAINRESP_CMPL |
10 | TERMINATE_WAIT |
11 | SCSITMF_WAIT |
12 | LAST |
13 | t |
上表可用于诊断问题描述发生在FC目标命令进程中的哪个位置。
例如、为每个状态添加一个小环境:
state=5: DATAOUT_WAIT
这表示在接受写入请求后、FC目标正在等待主机返回内容;但是、预期超时值内未返回任何内容。
state=8: DATAINRESP_SENT
这表示FC目标在接受读取请求后正在等待主机返回内容;但是、在预期超时值内未收到任何有效负载。
追加信息
其他信息文本