Loading

×Sorry to interrupt
Uncaught ReferenceError: addCTracking is not defined
throws at https://kb.vmware.com/resource/KM_TealiumTrackingJS?v=0.5:100:1

Refresh

Cookie Preference Center

General Information on cookies

When you visit our website, we use cookies to ensure that we give you the best experience. This information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies by clicking on the different category headings to find out more and change your settings. However, blocking some types of cookies may impact your experience on the site and the services we are able to offer. Further information can be found in our

Cookie Policy.

Strictly Necessary

Strictly Necessary

Always Active

Strictly Necessary

Strictly necessary cookies are always enabled since they are essential for our website to function. They enable core functionality such as security, network management, and website accessibility. You can set your browser to block or alert you about these cookies, but this may affect how the website functions. For more information please visit www.aboutcookies.org or www.allaboutcookies.org.

Cookie Details‎

Performance

Performance

Performance

Performance cookies are used to analyze the user experience to improve our website by collecting and reporting information on how you use it. They allow us to know which pages are the most and least popular, see how visitors move around the site, optimize our website and make it easier to navigate.

Cookie Details‎

Please confirm your settings by refreshing the page.

Functional

Functional

Functional

Functional cookies help us keep track of your past browsing choices so we can improve usability and customize your experience. These cookies enable the website to remember your preferred settings, language preferences, location and other customizable elements such as font or text size. If you do not allow these cookies, then some or all of these services may not function properly.

Cookie Details‎

Advertising

Advertising

Advertising

Advertising cookies are used to send you relevant advertising and promotional information. They may be set through our site by third parties to build a profile of your interests and show you relevant advertisements on other sites. These cookies do not directly store personal information, but their function is based on uniquely identifying your browser and internet device.

Cookie Details‎

Advertising Cookies

Consent Leg.Interest

Select All Vendors

Select All Vendors

Select All Hosts

Select All

Clear Filters

Information storage and access

Apply

Confirm My Choices Reject All Allow All

My Subscriptions

Loading

Knowledge Base

Interpreting SCSI sense codes in VMware ESXi and ESX (289902)

Last Updated: 3/2/2021Categories: InformationalTotal Views: 238985Language:
Chinese (Simplified)Portuguese (European)JapaneseEnglish

9 like this article

Subscribe to get an email
newsletter with new updates

9 people found this helpful Please provide article feedback:

Learn how VMware Skyline Advisor and Skyline Health Diagnostics work together to provide proactive intelligence and self-service log analysis.

Use Skyline Advisor to avoid issues before they occur across VCF, vSphere, vSAN, NSX, vROps & Horizon. Skyline Findings are based on top KBs, VMSAs/CVEs and design best practices.

Use Skyline Health Diagnostics to root cause vSphere & vSAN logs when an issue occurs. Skyline Health Diagnostic Findings are based on top KBs and VMSA/CVEs. You can use the Skyline Health Diagnostics tool in online or offline mode.

If you require additional help from technical support, please use Skyline Advisor to initiate a Log Assist to reduce time to upload logs. TSEs can also initiate logs to reduce effort.

Details

In the vmkernel or messages system log files on an ESXi/ESX 3.5 host, you see entries similar to:

WARNING: SCSI: 5663: vmhba0:0:1:1 status = 0/8 0x0 0x0 0x0

StorageMonitor: 196: vmhba1:1:6:0 status = 0/1 0x0 0x0 0x0

Note: In some versions of ESX 3.5, the advanced option Scsi.PrintCmdErrors must be enabled to view the sense codes.

In the vmkernel or messages system log files on an ESXi/ESX 4.x host, you see entries similar to:

NMP: nmp_CompleteCommandForPath: Command 0x28 (0x4100060b6200) to NMP device "naa.600601608c121200f80d33192b62dd11" failed on physical path "vmhba2:C0:T0:L4" H:0x8 D:0x0 P:0x0 Possible sense data: 0x0 0x0 0x0.

In the vmkernel.log system log file from an ESXi 5.0 host, you see entries similar to:

2011-04-04T21:07:30.257Z cpu2:2050)ScsiDeviceIO: 2315: Cmd(0x4124003edb00) 0x12, CmdSN 0x51 to dev "naa.600508e000000000c9f6baa7c19f6900" failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x24 0x0.

Mar 9 23:53:24 esx405 vmkernel: 2:14:39:54.069 cpu3:4300)ScsiDeviceIO: 1688: Command 0x28 to device "naa.60000970000292600219533031453245" failed H:0x1 D:0x0 P:0x3 Possible sense data: 0x0 0x0 0x0.

Solution

Note: This document is only for informational purposes. It does not reflect an issue with any VMware product.

SCSI status codes recorded in the ESXi/ESX logs indicate I/O has failed with a given status. This condition may be temporary, transient, benign, or fatal for any given workload depending on the status received. The meaning of the status should be determined by consulting the T10 standards documentation. Some SCSI status codes, when received by an ESXi/ESX host, prompt path failover. For more information, see SCSI events that can trigger ESX server to fail a LUN over to another path (1003433).

Isolate the SCSI events, and focus on the hexadecimal values:

0/8 0x0 0x0 0x0
H:0x8 D:0x0 P:0x0 Possible sense data: 0x0 0x0 0x0

Use the legend and links below to determine the status of the host and devices during the SCSI event:

For ESXi/ESX 3.5 and versions earlier than Update 5:

A/B 0xCC 0xDD 0xEE
A = SCSI Device Status (Target)
B = SCSI Host Status (Initiator)
CC = SCSI Sense Key
DD = Additional Sense Code
EE = Additional Sense Code Qualifier

For ESXi/ESX 3.5 U5 and ESXi/ESX 4.0 and later versions:

H:0xA D:0xB P:0xC Possible sense data: 0xD 0xE 0xF
A = Host status (Initiator)
B = Device Status (Target)
C = Plugin (VMware Specific)
D = Sense Key
E = Additional Sense Code
F = Additional Sense Code Qualifier

The information below is from T10 and the Linux Documentation Project which explains the sense codes above. T10 operates under INCITS and is responsible for SCSI Storage Interfaces. Its principal work is the Small Computer System Interface (SCSI), including the family of SCSI-3 projects. These codes are not VMware specific, but are based on SCSI standards. For more information, see Introduction to T10.

Note: The preceding link was correct as of March 11, 2015. If you find the link is broken, provide feedback and a VMware employee will update the link.

SCSI Host codes

These codes potentially come from the firmware on a host adapter or from one of several hosts that an adapter driver controls. The host_status field has the values listed below whose #defines mimic those which are only visible within the kernel (with the SG_ERR_ removed from the front of each define). A copy of these defines can be found in sg_err.h (see Appendix A):

SG_ERR_DID_OK
[0x00]

NO error

SG_ERR_DID_NO_CONNECT
[0x01]

Couldn't connect before timeout period

SG_ERR_DID_BUS_BUSY
[0x02]

BUS stayed busy through time out period

SG_ERR_DID_TIME_OUT
[0x03]

TIMED OUT for other reason (often this an unexpected device selection timeout)

SG_ERR_DID_BAD_TARGET
[0x04]

BAD target, device not responding?

SG_ERR_DID_ABORT
[0x05]

Told to abort for some other reason.

SG_ERR_DID_PARITY
[0x06]

Parity error. Older SCSI parallel buses have a parity bit for error detection. This probably indicates a cable or termination problem.

SG_ERR_DID_ERROR
[0x07]

Internal error detected in the host adapter.

SG_ERR_DID_RESET
[0x08]

The SCSI bus (or this device) has been reset. Any SCSI device on a SCSI bus is capable of instigating a reset.

SG_ERR_DID_BAD_INTR
[0x09]

Got an interrupt we weren't expecting

SG_ERR_DID_PASSTHROUGH
[0x0a]

Force command past mid-layer

SG_ERR_DID_SOFT_ERROR
[0x0b]

The low level driver wants a retry

For more information, see The Linux SCSI Generic (sg) HOWTO.

Note: The preceding links were correct as of March 11, 2015. If you find the link is broken, provide feedback and a VMware employee will update the link.

For more information on SCSI host codes, see Understanding SCSI host-side NMP errors/conditions in ESX 4.x and ESXi 5.x (1029039).

SCSI Device/Status codes

SCSI Status codes appear in the Status byte returned when the processing of a command completes. The code values are assigned by the T10 committee. The information on this page was accurate as of 20 August 2007. (Do not be concerned if this date looks old, as the Status code assignments change very infrequently.) For more information on Status codes, consult the latest revision of SAM-x.

Code Name

00h GOOD
02h CHECK CONDITION
04h CONDITION MET
08h BUSY
18h RESERVATION CONFLICT
28h TASK SET FULL
30h ACA ACTIVE
40h TASK ABORTED

For more information, see SCSI Status Codes.

Note: The preceding link was correct as of March 11, 2015. If you find the link is broken, provide feedback and a VMware employee will update the link.

Note: Hexadecimal numbers in the T10 documentation use the NNNh notation, whereas SCSI status codes logged to the ESX host use the equivalent 0xNNN notation; for example, 0x2 == 02h.

For additional information on SCSI device codes, see Understanding SCSI device/target NMP errors/conditions in ESX/ESXi 4.x and ESXi 5.0 (1030381).

SCSI Sense Keys

SCSI Sense Keys appear in the Sense Data available when a command returns with a CHECK CONDITION status. The sense key contains all the information necessary to understand why the command has failed.

Code Name

0h NO SENSE
1h RECOVERED ERROR
2h NOT READY
3h MEDIUM ERROR
4h HARDWARE ERROR
5h ILLEGAL REQUEST
6h UNIT ATTENTION
7h DATA PROTECT
8h BLANK CHECK
9h VENDOR SPECIFIC
Ah COPY ABORTED
Bh ABORTED COMMAND
Dh VOLUME OVERFLOW
Eh MISCOMPARE

For more information, see SCSI Sense Keys.

Note: The preceding link was correct as of March 11, 2015. If you find the link is broken, provide feedback and a VMware employee will update the link.

Note: Hexadecimal numbers in the T10 documentation use the NNNh notation, whereas SCSI status codes logged to the ESX host use the equivalent 0xNNN notation; for example, 0x2 == 02h.

SCSI Additional Sense Data

SCSI Additional Sense Data takes the form of two value encoded bytes in the sense data, typically returned by the REQUEST SENSE command. The additional sense code (ASC) byte indicates information about the error exception reported in the sense key field. The additional sense code qualifier (ASCQ) indicates detailed information related to the additional sense code. See the clause describing the REQUEST SENSE command in the SCSI Primary Commands - 3 (SPC-3) draft standard for more information about sense data.

|-> ASC value (in hexadecimal)
||
|| |-> ASCQ value (in hexadecimal)
|| ||
|| || |-> Codes identifying devices that may use the ASC/ASCQ pair
|| || |-> value. (See list of device code letters below.)
|| || |
|| || | | |-> Error or exception indicated by the
|| || | | |-> ASC/ASCQ pair value.
|| || |------------| |------------------------------------------|

04/00 DTLPWROMAEBKVF LOGICAL UNIT NOT READY, CAUSE NOT REPORTABLE
04/01 DTLPWROMAEBKVF LOGICAL UNIT IS IN PROCESS OF BECOMING READY
04/02 DTLPWROMAEBKVF LOGICAL UNIT NOT READY, INITIALIZING COMMAND REQUIRED
04/03 DTLPWROMAEBKVF LOGICAL UNIT NOT READY, MANUAL INTERVENTION REQUIRED

For more information, see SCSI Additional Sense Data.

Note: The preceding link was correct as of March 11, 2015. If you find the link is broken, provide feedback and a VMware employee will update the link.

VMware plug-in transfer codes

For a list of SCSI plug-in NMP conditions and error codes, see Understanding SCSI plug-in NMP errors/conditions in ESX/ESXi 4.x/5.x/6.0 (2004086)

Additional Information

For information on troubleshooting LUN connectivity, see Troubleshooting LUN connectivity issues on ESXi hosts

For translated versions of this article, see:

日本語： SCSI センス コードの解析 (1033612)

简体中文： 解释 VMware ESXi 和 ESX 中的 SCSI 感知代码(2077554)

Detectable by VMware SkylineTM

Actions

Copy

link to clipboard
copied!

Print

Language:
Chinese (Simplified)Portuguese (European)JapaneseEnglish

Attachments

Additional Resources

KB
•
End Of General Availability of the Free vSphere Hypervisor (ESXi 7.x and 8.x) (2107518)

KB
•
Download and Install VMware Fusion (2014097)

KB
•
Downloading and Installing the standalone VMware Remote Console (VMRC) in vSphere (2091284)

Results 1-3 of 3

Ask The Community

Get answers quickly from VMware experts in the community

Post Subject

CONTINUE IN COMMUNITIES

Related Products:

VMware vSphere ESXi

VMware vCenter Server

VMware ESX Server

Related Versions:

VMware vSphere ESXi 6.5

VMware vSphere ESXi 6.0

VMware vSphere ESXi 5.5

VMware vSphere ESXi 5.1

VMware vSphere ESXi 5.0

VMware vCenter Server 5.5.x

VMware ESXi 4.1.x Installable

VMware ESXi 4.1.x Embedded

VMware ESXi 4.0.x Installable

VMware ESXi 4.0.x Embedded

VMware ESXi 3.5.x Installable

VMware ESXi 3.5.x Embedded

VMware ESX Server 3.5.x

VMware ESX Server 3.0.x

VMware ESX Server 2.5.x

VMware ESX Server 2.1.x

VMware ESX Server 2.0.x

VMware ESX Server 1.x

VMware ESX Server 1.5.x

VMware ESX 4.1.x

VMware ESX 4.0.x

view all

Take Our Survey

Support Assistant