Skip to content
Snippets Groups Projects
Commit 396ce7b9 authored by Paolo Bonzini's avatar Paolo Bonzini
Browse files

scsi: add guest-recoverable ZBC errors


When running basic operations on zoned storage from the guest via
scsi-block, the following ASCs are reported for write or read commands
due to unexpected zone status or write pointer status:

     21h 04h: UNALIGNED WRITE COMMAND
     21h 05h: WRITE BOUNDARY VIOLATION
     21h 06h: ATTEMPT TO READ INVALID DATA
     55h 0Eh: INSUFFICIENT ZONE RESOURCES

Reporting these ASCs to the guest, the user applications can handle
them to manage zone/write pointer status, or help the user application
developers to understand the failure reason and fix bugs.

Reported-by: default avatarShinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent bdf9613b
No related branches found
No related tags found
No related merge requests found
......@@ -360,6 +360,11 @@ static bool scsi_sense_is_guest_recoverable(int key, int asc, int ascq)
case 0x2500: /* LOGICAL UNIT NOT SUPPORTED */
case 0x2600: /* INVALID FIELD IN PARAMETER LIST */
case 0x2104: /* UNALIGNED WRITE COMMAND */
case 0x2105: /* WRITE BOUNDARY VIOLATION */
case 0x2106: /* ATTEMPT TO READ INVALID DATA */
case 0x550e: /* INSUFFICIENT ZONE RESOURCES */
case 0x0401: /* NOT READY, IN PROGRESS OF BECOMING READY */
case 0x0402: /* NOT READY, INITIALIZING COMMAND REQUIRED */
return true;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment