如何对STIO进行解码:发现挂起的cmd
适用场景
- ONTAP 9及更高版本
- ONTAP 8.3.x
- ONTAP 8.2 7- 模式
问题解答
- STIO (SCSITarget I/O)消息是指SCSI协议级别的错误、用于帮助、解释和诊断根发生原因 中与SCSI相关的问题。
- 当FC目标适配器在处理期间遇到SCSI命令错误时、它会记录在EMS/MESSAGES中。
- 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=0x43a1, RX_ID=0xffff,SID=0x10a1e, 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=0x5dc2, RX_ID=0xffff,SID=0x40004, 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目标在接受读取请求后正在等待主机返回的内容;但是、在预期超时值内未收到任何有效负载。
追加信息
附加信息 _text