Print this page
7127  remove -Wno-missing-braces from Makefile.uts

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/io/scsi/impl/scsi_subr.c
          +++ new/usr/src/uts/common/io/scsi/impl/scsi_subr.c
↓ open down ↓ 489 lines elided ↑ open up ↑
 490  490          while (cmdlist[i].key !=  -1) {
 491  491                  if (cmd == cmdlist[i].key) {
 492  492                          return ((char *)cmdlist[i].message);
 493  493                  }
 494  494                  i++;
 495  495          }
 496  496          return (sprintf(tmpstr, "<undecoded cmd 0x%x>", cmd));
 497  497  }
 498  498  
 499  499  static struct scsi_asq_key_strings extended_sense_list[] = {
 500      -        0x00, 0x00, "no additional sense info",
 501      -        0x00, 0x01, "filemark detected",
 502      -        0x00, 0x02, "end of partition/medium detected",
 503      -        0x00, 0x03, "setmark detected",
 504      -        0x00, 0x04, "beginning of partition/medium detected",
 505      -        0x00, 0x05, "end of data detected",
 506      -        0x00, 0x06, "i/o process terminated",
 507      -        0x00, 0x11, "audio play operation in progress",
 508      -        0x00, 0x12, "audio play operation paused",
 509      -        0x00, 0x13, "audio play operation successfully completed",
 510      -        0x00, 0x14, "audio play operation stopped due to error",
 511      -        0x00, 0x15, "no current audio status to return",
 512      -        0x00, 0x16, "operation in progress",
 513      -        0x00, 0x17, "cleaning requested",
 514      -        0x00, 0x18, "erase operation in progress",
 515      -        0x00, 0x19, "locate operation in progress",
 516      -        0x00, 0x1A, "rewind operation in progress",
 517      -        0x00, 0x1B, "set capacity operation in progress",
 518      -        0x00, 0x1C, "verify operation in progress",
 519      -        0x00, 0x1D, "ATA passthrough information available",
 520      -        0x01, 0x00, "no index/sector signal",
 521      -        0x02, 0x00, "no seek complete",
 522      -        0x03, 0x00, "peripheral device write fault",
 523      -        0x03, 0x01, "no write current",
 524      -        0x03, 0x02, "excessive write errors",
 525      -        0x04, 0x00, "LUN not ready",
 526      -        0x04, 0x01, "LUN is becoming ready",
 527      -        0x04, 0x02, "LUN initializing command required",
 528      -        0x04, 0x03, "LUN not ready intervention required",
 529      -        0x04, 0x04, "LUN not ready format in progress",
 530      -        0x04, 0x05, "LUN not ready, rebuild in progress",
 531      -        0x04, 0x06, "LUN not ready, recalculation in progress",
 532      -        0x04, 0x07, "LUN not ready, operation in progress",
 533      -        0x04, 0x08, "LUN not ready, long write in progress",
 534      -        0x04, 0x09, "LUN not ready, self-test in progress",
 535      -        0x04, 0x0A, "LUN not accessible, asymmetric access state transition",
 536      -        0x04, 0x0B, "LUN not accessible, target port in standby state",
 537      -        0x04, 0x0C, "LUN not accessible, target port in unavailable state",
 538      -        0x04, 0x10, "LUN not ready, auxiliary memory not accessible",
 539      -        0x05, 0x00, "LUN does not respond to selection",
 540      -        0x06, 0x00, "reference position found",
 541      -        0x07, 0x00, "multiple peripheral devices selected",
 542      -        0x08, 0x00, "LUN communication failure",
 543      -        0x08, 0x01, "LUN communication time-out",
 544      -        0x08, 0x02, "LUN communication parity error",
 545      -        0x08, 0x03, "LUN communication crc error (ultra-DMA/32)",
 546      -        0x08, 0x04, "unreachable copy target",
 547      -        0x09, 0x00, "track following error",
 548      -        0x09, 0x01, "tracking servo failure",
 549      -        0x09, 0x02, "focus servo failure",
 550      -        0x09, 0x03, "spindle servo failure",
 551      -        0x09, 0x04, "head select fault",
 552      -        0x0a, 0x00, "error log overflow",
 553      -        0x0b, 0x00, "warning",
 554      -        0x0b, 0x01, "warning - specified temperature exceeded",
 555      -        0x0b, 0x02, "warning - enclosure degraded",
 556      -        0x0c, 0x00, "write error",
 557      -        0x0c, 0x01, "write error - recovered with auto reallocation",
 558      -        0x0c, 0x02, "write error - auto reallocation failed",
 559      -        0x0c, 0x03, "write error - recommend reassignment",
 560      -        0x0c, 0x04, "compression check miscompare error",
 561      -        0x0c, 0x05, "data expansion occurred during compression",
 562      -        0x0c, 0x06, "block not compressible",
 563      -        0x0c, 0x07, "write error - recovery needed",
 564      -        0x0c, 0x08, "write error - recovery failed",
 565      -        0x0c, 0x09, "write error - loss of streaming",
 566      -        0x0c, 0x0a, "write error - padding blocks added",
 567      -        0x0c, 0x0b, "auxiliary memory write error",
 568      -        0x0c, 0x0c, "write error - unexpected unsolicited data",
 569      -        0x0c, 0x0d, "write error - not enough unsolicited data",
 570      -        0x0d, 0x00, "error detected by third party temporary initiator",
 571      -        0x0d, 0x01, "third party device failure",
 572      -        0x0d, 0x02, "copy target device not reachable",
 573      -        0x0d, 0x03, "incorrect copy target device type",
 574      -        0x0d, 0x04, "copy target device data underrun",
 575      -        0x0d, 0x05, "copy target device data overrun",
 576      -        0x0e, 0x00, "invalid information unit",
 577      -        0x0e, 0x01, "information unit too short",
 578      -        0x0e, 0x02, "information unit too long",
 579      -        0x10, 0x00, "ID CRC or ECC error",
 580      -        0x11, 0x00, "unrecovered read error",
 581      -        0x11, 0x01, "read retries exhausted",
 582      -        0x11, 0x02, "error too long to correct",
 583      -        0x11, 0x03, "multiple read errors",
 584      -        0x11, 0x04, "unrecovered read error - auto reallocate failed",
 585      -        0x11, 0x05, "L-EC uncorrectable error",
 586      -        0x11, 0x06, "CIRC unrecovered error",
 587      -        0x11, 0x07, "data re-synchronization error",
 588      -        0x11, 0x08, "incomplete block read",
 589      -        0x11, 0x09, "no gap found",
 590      -        0x11, 0x0a, "miscorrected error",
 591      -        0x11, 0x0b, "unrecovered read error - recommend reassignment",
 592      -        0x11, 0x0c, "unrecovered read error - recommend rewrite the data",
 593      -        0x11, 0x0d, "de-compression crc error",
 594      -        0x11, 0x0e, "cannot decompress using declared algorithm",
 595      -        0x11, 0x0f, "error reading UPC/EAN number",
 596      -        0x11, 0x10, "error reading ISRC number",
 597      -        0x11, 0x11, "read error - loss of streaming",
 598      -        0x11, 0x12, "auxiliary memory read error",
 599      -        0x11, 0x13, "read error - failed retransmission request",
 600      -        0x12, 0x00, "address mark not found for ID field",
 601      -        0x13, 0x00, "address mark not found for data field",
 602      -        0x14, 0x00, "recorded entity not found",
 603      -        0x14, 0x01, "record not found",
 604      -        0x14, 0x02, "filemark or setmark not found",
 605      -        0x14, 0x03, "end-of-data not found",
 606      -        0x14, 0x04, "block sequence error",
 607      -        0x14, 0x05, "record not found - recommend reassignment",
 608      -        0x14, 0x06, "record not found - data auto-reallocated",
 609      -        0x14, 0x07, "locate operation failure",
 610      -        0x15, 0x00, "random positioning error",
 611      -        0x15, 0x01, "mechanical positioning error",
 612      -        0x15, 0x02, "positioning error detected by read of medium",
 613      -        0x16, 0x00, "data sync mark error",
 614      -        0x16, 0x01, "data sync error - data rewritten",
 615      -        0x16, 0x02, "data sync error - recommend rewrite",
 616      -        0x16, 0x03, "data sync error - data auto-reallocated",
 617      -        0x16, 0x04, "data sync error - recommend reassignment",
 618      -        0x17, 0x00, "recovered data with no error correction",
 619      -        0x17, 0x01, "recovered data with retries",
 620      -        0x17, 0x02, "recovered data with positive head offset",
 621      -        0x17, 0x03, "recovered data with negative head offset",
 622      -        0x17, 0x04, "recovered data with retries and/or CIRC applied",
 623      -        0x17, 0x05, "recovered data using previous sector id",
 624      -        0x17, 0x06, "recovered data without ECC - data auto-reallocated",
 625      -        0x17, 0x07, "recovered data without ECC - recommend reassignment",
 626      -        0x17, 0x08, "recovered data without ECC - recommend rewrite",
 627      -        0x17, 0x09, "recovered data without ECC - data rewritten",
 628      -        0x18, 0x00, "recovered data with error correction",
 629      -        0x18, 0x01, "recovered data with error corr. & retries applied",
 630      -        0x18, 0x02, "recovered data - data auto-reallocated",
 631      -        0x18, 0x03, "recovered data with CIRC",
 632      -        0x18, 0x04, "recovered data with L-EC",
 633      -        0x18, 0x05, "recovered data - recommend reassignment",
 634      -        0x18, 0x06, "recovered data - recommend rewrite",
 635      -        0x18, 0x07, "recovered data with ECC - data rewritten",
 636      -        0x18, 0x08, "recovered data with linking",
 637      -        0x19, 0x00, "defect list error",
 638      -        0x1a, 0x00, "parameter list length error",
 639      -        0x1b, 0x00, "synchronous data xfer error",
 640      -        0x1c, 0x00, "defect list not found",
 641      -        0x1c, 0x01, "primary defect list not found",
 642      -        0x1c, 0x02, "grown defect list not found",
 643      -        0x1d, 0x00, "miscompare during verify",
 644      -        0x1e, 0x00, "recovered ID with ECC",
 645      -        0x1f, 0x00, "partial defect list transfer",
 646      -        0x20, 0x00, "invalid command operation code",
 647      -        0x20, 0x01, "access denied - initiator pending-enrolled",
 648      -        0x20, 0x02, "access denied - no access rights",
 649      -        0x20, 0x03, "access denied - invalid mgmt id key",
 650      -        0x20, 0x04, "illegal command while in write capable state",
 651      -        0x20, 0x06, "illegal command while in explicit address mode",
 652      -        0x20, 0x07, "illegal command while in implicit address mode",
 653      -        0x20, 0x08, "access denied - enrollment conflict",
 654      -        0x20, 0x09, "access denied - invalid lu identifier",
 655      -        0x20, 0x0a, "access denied - invalid proxy token",
 656      -        0x20, 0x0b, "access denied - ACL LUN conflict",
 657      -        0x21, 0x00, "logical block address out of range",
 658      -        0x21, 0x01, "invalid element address",
 659      -        0x21, 0x02, "invalid address for write",
 660      -        0x22, 0x00, "illegal function",
 661      -        0x24, 0x00, "invalid field in cdb",
 662      -        0x24, 0x01, "cdb decryption error",
 663      -        0x25, 0x00, "LUN not supported",
 664      -        0x26, 0x00, "invalid field in param list",
 665      -        0x26, 0x01, "parameter not supported",
 666      -        0x26, 0x02, "parameter value invalid",
 667      -        0x26, 0x03, "threshold parameters not supported",
 668      -        0x26, 0x04, "invalid release of persistent reservation",
 669      -        0x26, 0x05, "data decryption error",
 670      -        0x26, 0x06, "too many target descriptors",
 671      -        0x26, 0x07, "unsupported target descriptor type code",
 672      -        0x26, 0x08, "too many segment descriptors",
 673      -        0x26, 0x09, "unsupported segment descriptor type code",
 674      -        0x26, 0x0a, "unexpected inexact segment",
 675      -        0x26, 0x0b, "inline data length exceeded",
 676      -        0x26, 0x0c, "invalid operation for copy source or destination",
 677      -        0x26, 0x0d, "copy segment granularity violation",
 678      -        0x27, 0x00, "write protected",
 679      -        0x27, 0x01, "hardware write protected",
 680      -        0x27, 0x02, "LUN software write protected",
 681      -        0x27, 0x03, "associated write protect",
 682      -        0x27, 0x04, "persistent write protect",
 683      -        0x27, 0x05, "permanent write protect",
 684      -        0x27, 0x06, "conditional write protect",
 685      -        0x27, 0x80, "unable to overwrite data",
 686      -        0x28, 0x00, "medium may have changed",
 687      -        0x28, 0x01, "import or export element accessed",
 688      -        0x29, 0x00, "power on, reset, or bus reset occurred",
 689      -        0x29, 0x01, "power on occurred",
 690      -        0x29, 0x02, "scsi bus reset occurred",
 691      -        0x29, 0x03, "bus device reset message occurred",
 692      -        0x29, 0x04, "device internal reset",
 693      -        0x29, 0x05, "transceiver mode changed to single-ended",
 694      -        0x29, 0x06, "transceiver mode changed to LVD",
 695      -        0x29, 0x07, "i_t nexus loss occurred",
 696      -        0x2a, 0x00, "parameters changed",
 697      -        0x2a, 0x01, "mode parameters changed",
 698      -        0x2a, 0x02, "log parameters changed",
 699      -        0x2a, 0x03, "reservations preempted",
 700      -        0x2a, 0x04, "reservations released",
 701      -        0x2a, 0x05, "registrations preempted",
 702      -        0x2a, 0x06, "asymmetric access state changed",
 703      -        0x2a, 0x07, "implicit asymmetric access state transition failed",
 704      -        0x2b, 0x00, "copy cannot execute since host cannot disconnect",
 705      -        0x2c, 0x00, "command sequence error",
 706      -        0x2c, 0x03, "current program area is not empty",
 707      -        0x2c, 0x04, "current program area is empty",
 708      -        0x2c, 0x06, "persistent prevent conflict",
 709      -        0x2c, 0x07, "previous busy status",
 710      -        0x2c, 0x08, "previous task set full status",
 711      -        0x2c, 0x09, "previous reservation conflict status",
 712      -        0x2d, 0x00, "overwrite error on update in place",
 713      -        0x2e, 0x00, "insufficient time for operation",
 714      -        0x2f, 0x00, "commands cleared by another initiator",
 715      -        0x30, 0x00, "incompatible medium installed",
 716      -        0x30, 0x01, "cannot read medium - unknown format",
 717      -        0x30, 0x02, "cannot read medium - incompatible format",
 718      -        0x30, 0x03, "cleaning cartridge installed",
 719      -        0x30, 0x04, "cannot write medium - unknown format",
 720      -        0x30, 0x05, "cannot write medium - incompatible format",
 721      -        0x30, 0x06, "cannot format medium - incompatible medium",
 722      -        0x30, 0x07, "cleaning failure",
 723      -        0x30, 0x08, "cannot write - application code mismatch",
 724      -        0x30, 0x09, "current session not fixated for append",
 725      -        0x30, 0x0b, "WORM medium - Overwrite attempted",
 726      -        0x30, 0x0c, "WORM medium - Cannot Erase",
 727      -        0x30, 0x0d, "WORM medium - Integrity Check",
 728      -        0x30, 0x10, "medium not formatted",
 729      -        0x31, 0x00, "medium format corrupted",
 730      -        0x31, 0x01, "format command failed",
 731      -        0x31, 0x02, "zoned formatting failed due to spare linking",
 732      -        0x31, 0x94, "WORM media corrupted",
 733      -        0x32, 0x00, "no defect spare location available",
 734      -        0x32, 0x01, "defect list update failure",
 735      -        0x33, 0x00, "tape length error",
 736      -        0x34, 0x00, "enclosure failure",
 737      -        0x35, 0x00, "enclosure services failure",
 738      -        0x35, 0x01, "unsupported enclosure function",
 739      -        0x35, 0x02, "enclosure services unavailable",
 740      -        0x35, 0x03, "enclosure services transfer failure",
 741      -        0x35, 0x04, "enclosure services transfer refused",
 742      -        0x36, 0x00, "ribbon, ink, or toner failure",
 743      -        0x37, 0x00, "rounded parameter",
 744      -        0x39, 0x00, "saving parameters not supported",
 745      -        0x3a, 0x00, "medium not present",
 746      -        0x3a, 0x01, "medium not present - tray closed",
 747      -        0x3a, 0x02, "medium not present - tray open",
 748      -        0x3a, 0x03, "medium not present - loadable",
 749      -        0x3a, 0x04, "medium not present - medium auxiliary memory accessible",
 750      -        0x3b, 0x00, "sequential positioning error",
 751      -        0x3b, 0x01, "tape position error at beginning-of-medium",
 752      -        0x3b, 0x02, "tape position error at end-of-medium",
 753      -        0x3b, 0x08, "reposition error",
 754      -        0x3b, 0x0c, "position past beginning of medium",
 755      -        0x3b, 0x0d, "medium destination element full",
 756      -        0x3b, 0x0e, "medium source element empty",
 757      -        0x3b, 0x0f, "end of medium reached",
 758      -        0x3b, 0x11, "medium magazine not accessible",
 759      -        0x3b, 0x12, "medium magazine removed",
 760      -        0x3b, 0x13, "medium magazine inserted",
 761      -        0x3b, 0x14, "medium magazine locked",
 762      -        0x3b, 0x15, "medium magazine unlocked",
 763      -        0x3b, 0x16, "mechanical positioning or changer error",
 764      -        0x3d, 0x00, "invalid bits in indentify message",
 765      -        0x3e, 0x00, "LUN has not self-configured yet",
 766      -        0x3e, 0x01, "LUN failure",
 767      -        0x3e, 0x02, "timeout on LUN",
 768      -        0x3e, 0x03, "LUN failed self-test",
 769      -        0x3e, 0x04, "LUN unable to update self-test log",
 770      -        0x3f, 0x00, "target operating conditions have changed",
 771      -        0x3f, 0x01, "microcode has been changed",
 772      -        0x3f, 0x02, "changed operating definition",
 773      -        0x3f, 0x03, "inquiry data has changed",
 774      -        0x3f, 0x04, "component device attached",
 775      -        0x3f, 0x05, "device identifier changed",
 776      -        0x3f, 0x06, "redundancy group created or modified",
 777      -        0x3f, 0x07, "redundancy group deleted",
 778      -        0x3f, 0x08, "spare created or modified",
 779      -        0x3f, 0x09, "spare deleted",
 780      -        0x3f, 0x0a, "volume set created or modified",
 781      -        0x3f, 0x0b, "volume set deleted",
 782      -        0x3f, 0x0c, "volume set deassigned",
 783      -        0x3f, 0x0d, "volume set reassigned",
 784      -        0x3f, 0x0e, "reported LUNs data has changed",
 785      -        0x3f, 0x0f, "echo buffer overwritten",
 786      -        0x3f, 0x10, "medium loadable",
 787      -        0x3f, 0x11, "medium auxiliary memory accessible",
 788      -        0x40, 0x00, "ram failure",
 789      -        0x41, 0x00, "data path failure",
 790      -        0x42, 0x00, "power-on or self-test failure",
 791      -        0x43, 0x00, "message error",
 792      -        0x44, 0x00, "internal target failure",
 793      -        0x45, 0x00, "select or reselect failure",
 794      -        0x46, 0x00, "unsuccessful soft reset",
 795      -        0x47, 0x00, "scsi parity error",
 796      -        0x47, 0x01, "data phase crc error detected",
 797      -        0x47, 0x02, "scsi parity error detected during st data phase",
 798      -        0x47, 0x03, "information unit iucrc error detected",
 799      -        0x47, 0x04, "asynchronous information protection error detected",
 800      -        0x47, 0x05, "protocol service crc error",
 801      -        0x47, 0x7f, "some commands cleared by iscsi protocol event",
 802      -        0x48, 0x00, "initiator detected error message received",
 803      -        0x49, 0x00, "invalid message error",
 804      -        0x4a, 0x00, "command phase error",
 805      -        0x4b, 0x00, "data phase error",
 806      -        0x4b, 0x01, "invalid target port transfer tag received",
 807      -        0x4b, 0x02, "too much write data",
 808      -        0x4b, 0x03, "ack/nak timeout",
 809      -        0x4b, 0x04, "nak received",
 810      -        0x4b, 0x05, "data offset error",
 811      -        0x4c, 0x00, "logical unit failed self-configuration",
 812      -        0x4d, 0x00, "tagged overlapped commands (ASCQ = queue tag)",
 813      -        0x4e, 0x00, "overlapped commands attempted",
 814      -        0x50, 0x00, "write append error",
 815      -        0x50, 0x01, "data protect write append error",
 816      -        0x50, 0x95, "data protect write append error",
 817      -        0x51, 0x00, "erase failure",
 818      -        0x52, 0x00, "cartridge fault",
 819      -        0x53, 0x00, "media load or eject failed",
 820      -        0x53, 0x01, "unload tape failure",
 821      -        0x53, 0x02, "medium removal prevented",
 822      -        0x54, 0x00, "scsi to host system interface failure",
 823      -        0x55, 0x00, "system resource failure",
 824      -        0x55, 0x01, "system buffer full",
 825      -        0x55, 0x02, "insufficient reservation resources",
 826      -        0x55, 0x03, "insufficient resources",
 827      -        0x55, 0x04, "insufficient registration resources",
 828      -        0x55, 0x05, "insufficient access control resources",
 829      -        0x55, 0x06, "auxiliary memory out of space",
 830      -        0x57, 0x00, "unable to recover TOC",
 831      -        0x58, 0x00, "generation does not exist",
 832      -        0x59, 0x00, "updated block read",
 833      -        0x5a, 0x00, "operator request or state change input",
 834      -        0x5a, 0x01, "operator medium removal request",
 835      -        0x5a, 0x02, "operator selected write protect",
 836      -        0x5a, 0x03, "operator selected write permit",
 837      -        0x5b, 0x00, "log exception",
 838      -        0x5b, 0x01, "threshold condition met",
 839      -        0x5b, 0x02, "log counter at maximum",
 840      -        0x5b, 0x03, "log list codes exhausted",
 841      -        0x5c, 0x00, "RPL status change",
 842      -        0x5c, 0x01, "spindles synchronized",
 843      -        0x5c, 0x02, "spindles not synchronized",
 844      -        0x5d, 0x00, "drive operation marginal, service immediately"
 845      -                    " (failure prediction threshold exceeded)",
 846      -        0x5d, 0x01, "media failure prediction threshold exceeded",
 847      -        0x5d, 0x02, "LUN failure prediction threshold exceeded",
 848      -        0x5d, 0x03, "spare area exhaustion prediction threshold exceeded",
 849      -        0x5d, 0x10, "hardware impending failure general hard drive failure",
 850      -        0x5d, 0x11, "hardware impending failure drive error rate too high",
 851      -        0x5d, 0x12, "hardware impending failure data error rate too high",
 852      -        0x5d, 0x13, "hardware impending failure seek error rate too high",
 853      -        0x5d, 0x14, "hardware impending failure too many block reassigns",
 854      -        0x5d, 0x15, "hardware impending failure access times too high",
 855      -        0x5d, 0x16, "hardware impending failure start unit times too high",
 856      -        0x5d, 0x17, "hardware impending failure channel parametrics",
 857      -        0x5d, 0x18, "hardware impending failure controller detected",
 858      -        0x5d, 0x19, "hardware impending failure throughput performance",
 859      -        0x5d, 0x1a, "hardware impending failure seek time performance",
 860      -        0x5d, 0x1b, "hardware impending failure spin-up retry count",
 861      -        0x5d, 0x1c, "hardware impending failure drive calibration retry count",
 862      -        0x5d, 0x20, "controller impending failure general hard drive failure",
 863      -        0x5d, 0x21, "controller impending failure drive error rate too high",
 864      -        0x5d, 0x22, "controller impending failure data error rate too high",
 865      -        0x5d, 0x23, "controller impending failure seek error rate too high",
 866      -        0x5d, 0x24, "controller impending failure too many block reassigns",
 867      -        0x5d, 0x25, "controller impending failure access times too high",
 868      -        0x5d, 0x26, "controller impending failure start unit times too high",
 869      -        0x5d, 0x27, "controller impending failure channel parametrics",
 870      -        0x5d, 0x28, "controller impending failure controller detected",
 871      -        0x5d, 0x29, "controller impending failure throughput performance",
 872      -        0x5d, 0x2a, "controller impending failure seek time performance",
 873      -        0x5d, 0x2b, "controller impending failure spin-up retry count",
 874      -        0x5d, 0x2c, "controller impending failure drive calibration retry cnt",
 875      -        0x5d, 0x30, "data channel impending failure general hard drive failure",
 876      -        0x5d, 0x31, "data channel impending failure drive error rate too high",
 877      -        0x5d, 0x32, "data channel impending failure data error rate too high",
 878      -        0x5d, 0x33, "data channel impending failure seek error rate too high",
 879      -        0x5d, 0x34, "data channel impending failure too many block reassigns",
 880      -        0x5d, 0x35, "data channel impending failure access times too high",
 881      -        0x5d, 0x36, "data channel impending failure start unit times too high",
 882      -        0x5d, 0x37, "data channel impending failure channel parametrics",
 883      -        0x5d, 0x38, "data channel impending failure controller detected",
 884      -        0x5d, 0x39, "data channel impending failure throughput performance",
 885      -        0x5d, 0x3a, "data channel impending failure seek time performance",
 886      -        0x5d, 0x3b, "data channel impending failure spin-up retry count",
 887      -        0x5d, 0x3c, "data channel impending failure drive calibrate retry cnt",
 888      -        0x5d, 0x40, "servo impending failure general hard drive failure",
 889      -        0x5d, 0x41, "servo impending failure drive error rate too high",
 890      -        0x5d, 0x42, "servo impending failure data error rate too high",
 891      -        0x5d, 0x43, "servo impending failure seek error rate too high",
 892      -        0x5d, 0x44, "servo impending failure too many block reassigns",
 893      -        0x5d, 0x45, "servo impending failure access times too high",
 894      -        0x5d, 0x46, "servo impending failure start unit times too high",
 895      -        0x5d, 0x47, "servo impending failure channel parametrics",
 896      -        0x5d, 0x48, "servo impending failure controller detected",
 897      -        0x5d, 0x49, "servo impending failure throughput performance",
 898      -        0x5d, 0x4a, "servo impending failure seek time performance",
 899      -        0x5d, 0x4b, "servo impending failure spin-up retry count",
 900      -        0x5d, 0x4c, "servo impending failure drive calibration retry count",
 901      -        0x5d, 0x50, "spindle impending failure general hard drive failure",
 902      -        0x5d, 0x51, "spindle impending failure drive error rate too high",
 903      -        0x5d, 0x52, "spindle impending failure data error rate too high",
 904      -        0x5d, 0x53, "spindle impending failure seek error rate too high",
 905      -        0x5d, 0x54, "spindle impending failure too many block reassigns",
 906      -        0x5d, 0x55, "spindle impending failure access times too high",
 907      -        0x5d, 0x56, "spindle impending failure start unit times too high",
 908      -        0x5d, 0x57, "spindle impending failure channel parametrics",
 909      -        0x5d, 0x58, "spindle impending failure controller detected",
 910      -        0x5d, 0x59, "spindle impending failure throughput performance",
 911      -        0x5d, 0x5a, "spindle impending failure seek time performance",
 912      -        0x5d, 0x5b, "spindle impending failure spin-up retry count",
 913      -        0x5d, 0x5c, "spindle impending failure drive calibration retry count",
 914      -        0x5d, 0x60, "firmware impending failure general hard drive failure",
 915      -        0x5d, 0x61, "firmware impending failure drive error rate too high",
 916      -        0x5d, 0x62, "firmware impending failure data error rate too high",
 917      -        0x5d, 0x63, "firmware impending failure seek error rate too high",
 918      -        0x5d, 0x64, "firmware impending failure too many block reassigns",
 919      -        0x5d, 0x65, "firmware impending failure access times too high",
 920      -        0x5d, 0x66, "firmware impending failure start unit times too high",
 921      -        0x5d, 0x67, "firmware impending failure channel parametrics",
 922      -        0x5d, 0x68, "firmware impending failure controller detected",
 923      -        0x5d, 0x69, "firmware impending failure throughput performance",
 924      -        0x5d, 0x6a, "firmware impending failure seek time performance",
 925      -        0x5d, 0x6b, "firmware impending failure spin-up retry count",
 926      -        0x5d, 0x6c, "firmware impending failure drive calibration retry count",
 927      -        0x5d, 0xff, "failure prediction threshold exceeded (false)",
 928      -        0x5e, 0x00, "low power condition active",
 929      -        0x5e, 0x01, "idle condition activated by timer",
 930      -        0x5e, 0x02, "standby condition activated by timer",
 931      -        0x5e, 0x03, "idle condition activated by command",
 932      -        0x5e, 0x04, "standby condition activated by command",
 933      -        0x60, 0x00, "lamp failure",
 934      -        0x61, 0x00, "video acquisition error",
 935      -        0x62, 0x00, "scan head positioning error",
 936      -        0x63, 0x00, "end of user area encountered on this track",
 937      -        0x63, 0x01, "packet does not fit in available space",
 938      -        0x64, 0x00, "illegal mode for this track",
 939      -        0x64, 0x01, "invalid packet size",
 940      -        0x65, 0x00, "voltage fault",
 941      -        0x66, 0x00, "automatic document feeder cover up",
 942      -        0x67, 0x00, "configuration failure",
 943      -        0x67, 0x01, "configuration of incapable LUNs failed",
 944      -        0x67, 0x02, "add LUN failed",
 945      -        0x67, 0x03, "modification of LUN failed",
 946      -        0x67, 0x04, "exchange of LUN failed",
 947      -        0x67, 0x05, "remove of LUN failed",
 948      -        0x67, 0x06, "attachment of LUN failed",
 949      -        0x67, 0x07, "creation of LUN failed",
 950      -        0x67, 0x08, "assign failure occurred",
 951      -        0x67, 0x09, "multiply assigned LUN",
 952      -        0x67, 0x0a, "set target port groups command failed",
 953      -        0x68, 0x00, "logical unit not configured",
 954      -        0x69, 0x00, "data loss on logical unit",
 955      -        0x69, 0x01, "multiple LUN failures",
 956      -        0x69, 0x02, "parity/data mismatch",
 957      -        0x6a, 0x00, "informational, refer to log",
 958      -        0x6b, 0x00, "state change has occurred",
 959      -        0x6b, 0x01, "redundancy level got better",
 960      -        0x6b, 0x02, "redundancy level got worse",
 961      -        0x6c, 0x00, "rebuild failure occurred",
 962      -        0x6d, 0x00, "recalculate failure occurred",
 963      -        0x6e, 0x00, "command to logical unit failed",
 964      -        0x6f, 0x00, "copy protect key exchange failure authentication failure",
 965      -        0x6f, 0x01, "copy protect key exchange failure key not present",
 966      -        0x6f, 0x02, "copy protect key exchange failure key not established",
 967      -        0x6f, 0x03, "read of scrambled sector without authentication",
 968      -        0x6f, 0x04, "media region code is mismatched to LUN region",
 969      -        0x6f, 0x05, "drive region must be permanent/region reset count error",
 970      -        0x70, 0xffff, "decompression exception short algorithm id of ASCQ",
 971      -        0x71, 0x00, "decompression exception long algorithm id",
 972      -        0x72, 0x00, "session fixation error",
 973      -        0x72, 0x01, "session fixation error writing lead-in",
 974      -        0x72, 0x02, "session fixation error writing lead-out",
 975      -        0x72, 0x03, "session fixation error - incomplete track in session",
 976      -        0x72, 0x04, "empty or partially written reserved track",
 977      -        0x72, 0x05, "no more track reservations allowed",
 978      -        0x73, 0x00, "cd control error",
 979      -        0x73, 0x01, "power calibration area almost full",
 980      -        0x73, 0x02, "power calibration area is full",
 981      -        0x73, 0x03, "power calibration area error",
 982      -        0x73, 0x04, "program memory area update failure",
 983      -        0x73, 0x05, "program memory area is full",
 984      -        0x73, 0x06, "rma/pma is almost full",
 985      -        0xffff, 0xffff, NULL
      500 +        { 0x00, 0x00, "no additional sense info" },
      501 +        { 0x00, 0x01, "filemark detected" },
      502 +        { 0x00, 0x02, "end of partition/medium detected" },
      503 +        { 0x00, 0x03, "setmark detected" },
      504 +        { 0x00, 0x04, "beginning of partition/medium detected" },
      505 +        { 0x00, 0x05, "end of data detected" },
      506 +        { 0x00, 0x06, "i/o process terminated" },
      507 +        { 0x00, 0x11, "audio play operation in progress" },
      508 +        { 0x00, 0x12, "audio play operation paused" },
      509 +        { 0x00, 0x13, "audio play operation successfully completed" },
      510 +        { 0x00, 0x14, "audio play operation stopped due to error" },
      511 +        { 0x00, 0x15, "no current audio status to return" },
      512 +        { 0x00, 0x16, "operation in progress" },
      513 +        { 0x00, 0x17, "cleaning requested" },
      514 +        { 0x00, 0x18, "erase operation in progress" },
      515 +        { 0x00, 0x19, "locate operation in progress" },
      516 +        { 0x00, 0x1A, "rewind operation in progress" },
      517 +        { 0x00, 0x1B, "set capacity operation in progress" },
      518 +        { 0x00, 0x1C, "verify operation in progress" },
      519 +        { 0x00, 0x1D, "ATA passthrough information available" },
      520 +        { 0x01, 0x00, "no index/sector signal" },
      521 +        { 0x02, 0x00, "no seek complete" },
      522 +        { 0x03, 0x00, "peripheral device write fault" },
      523 +        { 0x03, 0x01, "no write current" },
      524 +        { 0x03, 0x02, "excessive write errors" },
      525 +        { 0x04, 0x00, "LUN not ready" },
      526 +        { 0x04, 0x01, "LUN is becoming ready" },
      527 +        { 0x04, 0x02, "LUN initializing command required" },
      528 +        { 0x04, 0x03, "LUN not ready intervention required" },
      529 +        { 0x04, 0x04, "LUN not ready format in progress" },
      530 +        { 0x04, 0x05, "LUN not ready, rebuild in progress" },
      531 +        { 0x04, 0x06, "LUN not ready, recalculation in progress" },
      532 +        { 0x04, 0x07, "LUN not ready, operation in progress" },
      533 +        { 0x04, 0x08, "LUN not ready, long write in progress" },
      534 +        { 0x04, 0x09, "LUN not ready, self-test in progress" },
      535 +        { 0x04, 0x0A, "LUN not accessible, asymmetric access state transition" },
      536 +        { 0x04, 0x0B, "LUN not accessible, target port in standby state" },
      537 +        { 0x04, 0x0C, "LUN not accessible, target port in unavailable state" },
      538 +        { 0x04, 0x10, "LUN not ready, auxiliary memory not accessible" },
      539 +        { 0x05, 0x00, "LUN does not respond to selection" },
      540 +        { 0x06, 0x00, "reference position found" },
      541 +        { 0x07, 0x00, "multiple peripheral devices selected" },
      542 +        { 0x08, 0x00, "LUN communication failure" },
      543 +        { 0x08, 0x01, "LUN communication time-out" },
      544 +        { 0x08, 0x02, "LUN communication parity error" },
      545 +        { 0x08, 0x03, "LUN communication crc error (ultra-DMA/32)" },
      546 +        { 0x08, 0x04, "unreachable copy target" },
      547 +        { 0x09, 0x00, "track following error" },
      548 +        { 0x09, 0x01, "tracking servo failure" },
      549 +        { 0x09, 0x02, "focus servo failure" },
      550 +        { 0x09, 0x03, "spindle servo failure" },
      551 +        { 0x09, 0x04, "head select fault" },
      552 +        { 0x0a, 0x00, "error log overflow" },
      553 +        { 0x0b, 0x00, "warning" },
      554 +        { 0x0b, 0x01, "warning - specified temperature exceeded" },
      555 +        { 0x0b, 0x02, "warning - enclosure degraded" },
      556 +        { 0x0c, 0x00, "write error" },
      557 +        { 0x0c, 0x01, "write error - recovered with auto reallocation" },
      558 +        { 0x0c, 0x02, "write error - auto reallocation failed" },
      559 +        { 0x0c, 0x03, "write error - recommend reassignment" },
      560 +        { 0x0c, 0x04, "compression check miscompare error" },
      561 +        { 0x0c, 0x05, "data expansion occurred during compression" },
      562 +        { 0x0c, 0x06, "block not compressible" },
      563 +        { 0x0c, 0x07, "write error - recovery needed" },
      564 +        { 0x0c, 0x08, "write error - recovery failed" },
      565 +        { 0x0c, 0x09, "write error - loss of streaming" },
      566 +        { 0x0c, 0x0a, "write error - padding blocks added" },
      567 +        { 0x0c, 0x0b, "auxiliary memory write error" },
      568 +        { 0x0c, 0x0c, "write error - unexpected unsolicited data" },
      569 +        { 0x0c, 0x0d, "write error - not enough unsolicited data" },
      570 +        { 0x0d, 0x00, "error detected by third party temporary initiator" },
      571 +        { 0x0d, 0x01, "third party device failure" },
      572 +        { 0x0d, 0x02, "copy target device not reachable" },
      573 +        { 0x0d, 0x03, "incorrect copy target device type" },
      574 +        { 0x0d, 0x04, "copy target device data underrun" },
      575 +        { 0x0d, 0x05, "copy target device data overrun" },
      576 +        { 0x0e, 0x00, "invalid information unit" },
      577 +        { 0x0e, 0x01, "information unit too short" },
      578 +        { 0x0e, 0x02, "information unit too long" },
      579 +        { 0x10, 0x00, "ID CRC or ECC error" },
      580 +        { 0x11, 0x00, "unrecovered read error" },
      581 +        { 0x11, 0x01, "read retries exhausted" },
      582 +        { 0x11, 0x02, "error too long to correct" },
      583 +        { 0x11, 0x03, "multiple read errors" },
      584 +        { 0x11, 0x04, "unrecovered read error - auto reallocate failed" },
      585 +        { 0x11, 0x05, "L-EC uncorrectable error" },
      586 +        { 0x11, 0x06, "CIRC unrecovered error" },
      587 +        { 0x11, 0x07, "data re-synchronization error" },
      588 +        { 0x11, 0x08, "incomplete block read" },
      589 +        { 0x11, 0x09, "no gap found" },
      590 +        { 0x11, 0x0a, "miscorrected error" },
      591 +        { 0x11, 0x0b, "unrecovered read error - recommend reassignment" },
      592 +        { 0x11, 0x0c, "unrecovered read error - recommend rewrite the data" },
      593 +        { 0x11, 0x0d, "de-compression crc error" },
      594 +        { 0x11, 0x0e, "cannot decompress using declared algorithm" },
      595 +        { 0x11, 0x0f, "error reading UPC/EAN number" },
      596 +        { 0x11, 0x10, "error reading ISRC number" },
      597 +        { 0x11, 0x11, "read error - loss of streaming" },
      598 +        { 0x11, 0x12, "auxiliary memory read error" },
      599 +        { 0x11, 0x13, "read error - failed retransmission request" },
      600 +        { 0x12, 0x00, "address mark not found for ID field" },
      601 +        { 0x13, 0x00, "address mark not found for data field" },
      602 +        { 0x14, 0x00, "recorded entity not found" },
      603 +        { 0x14, 0x01, "record not found" },
      604 +        { 0x14, 0x02, "filemark or setmark not found" },
      605 +        { 0x14, 0x03, "end-of-data not found" },
      606 +        { 0x14, 0x04, "block sequence error" },
      607 +        { 0x14, 0x05, "record not found - recommend reassignment" },
      608 +        { 0x14, 0x06, "record not found - data auto-reallocated" },
      609 +        { 0x14, 0x07, "locate operation failure" },
      610 +        { 0x15, 0x00, "random positioning error" },
      611 +        { 0x15, 0x01, "mechanical positioning error" },
      612 +        { 0x15, 0x02, "positioning error detected by read of medium" },
      613 +        { 0x16, 0x00, "data sync mark error" },
      614 +        { 0x16, 0x01, "data sync error - data rewritten" },
      615 +        { 0x16, 0x02, "data sync error - recommend rewrite" },
      616 +        { 0x16, 0x03, "data sync error - data auto-reallocated" },
      617 +        { 0x16, 0x04, "data sync error - recommend reassignment" },
      618 +        { 0x17, 0x00, "recovered data with no error correction" },
      619 +        { 0x17, 0x01, "recovered data with retries" },
      620 +        { 0x17, 0x02, "recovered data with positive head offset" },
      621 +        { 0x17, 0x03, "recovered data with negative head offset" },
      622 +        { 0x17, 0x04, "recovered data with retries and/or CIRC applied" },
      623 +        { 0x17, 0x05, "recovered data using previous sector id" },
      624 +        { 0x17, 0x06, "recovered data without ECC - data auto-reallocated" },
      625 +        { 0x17, 0x07, "recovered data without ECC - recommend reassignment" },
      626 +        { 0x17, 0x08, "recovered data without ECC - recommend rewrite" },
      627 +        { 0x17, 0x09, "recovered data without ECC - data rewritten" },
      628 +        { 0x18, 0x00, "recovered data with error correction" },
      629 +        { 0x18, 0x01, "recovered data with error corr. & retries applied" },
      630 +        { 0x18, 0x02, "recovered data - data auto-reallocated" },
      631 +        { 0x18, 0x03, "recovered data with CIRC" },
      632 +        { 0x18, 0x04, "recovered data with L-EC" },
      633 +        { 0x18, 0x05, "recovered data - recommend reassignment" },
      634 +        { 0x18, 0x06, "recovered data - recommend rewrite" },
      635 +        { 0x18, 0x07, "recovered data with ECC - data rewritten" },
      636 +        { 0x18, 0x08, "recovered data with linking" },
      637 +        { 0x19, 0x00, "defect list error" },
      638 +        { 0x1a, 0x00, "parameter list length error" },
      639 +        { 0x1b, 0x00, "synchronous data xfer error" },
      640 +        { 0x1c, 0x00, "defect list not found" },
      641 +        { 0x1c, 0x01, "primary defect list not found" },
      642 +        { 0x1c, 0x02, "grown defect list not found" },
      643 +        { 0x1d, 0x00, "miscompare during verify" },
      644 +        { 0x1e, 0x00, "recovered ID with ECC" },
      645 +        { 0x1f, 0x00, "partial defect list transfer" },
      646 +        { 0x20, 0x00, "invalid command operation code" },
      647 +        { 0x20, 0x01, "access denied - initiator pending-enrolled" },
      648 +        { 0x20, 0x02, "access denied - no access rights" },
      649 +        { 0x20, 0x03, "access denied - invalid mgmt id key" },
      650 +        { 0x20, 0x04, "illegal command while in write capable state" },
      651 +        { 0x20, 0x06, "illegal command while in explicit address mode" },
      652 +        { 0x20, 0x07, "illegal command while in implicit address mode" },
      653 +        { 0x20, 0x08, "access denied - enrollment conflict" },
      654 +        { 0x20, 0x09, "access denied - invalid lu identifier" },
      655 +        { 0x20, 0x0a, "access denied - invalid proxy token" },
      656 +        { 0x20, 0x0b, "access denied - ACL LUN conflict" },
      657 +        { 0x21, 0x00, "logical block address out of range" },
      658 +        { 0x21, 0x01, "invalid element address" },
      659 +        { 0x21, 0x02, "invalid address for write" },
      660 +        { 0x22, 0x00, "illegal function" },
      661 +        { 0x24, 0x00, "invalid field in cdb" },
      662 +        { 0x24, 0x01, "cdb decryption error" },
      663 +        { 0x25, 0x00, "LUN not supported" },
      664 +        { 0x26, 0x00, "invalid field in param list" },
      665 +        { 0x26, 0x01, "parameter not supported" },
      666 +        { 0x26, 0x02, "parameter value invalid" },
      667 +        { 0x26, 0x03, "threshold parameters not supported" },
      668 +        { 0x26, 0x04, "invalid release of persistent reservation" },
      669 +        { 0x26, 0x05, "data decryption error" },
      670 +        { 0x26, 0x06, "too many target descriptors" },
      671 +        { 0x26, 0x07, "unsupported target descriptor type code" },
      672 +        { 0x26, 0x08, "too many segment descriptors" },
      673 +        { 0x26, 0x09, "unsupported segment descriptor type code" },
      674 +        { 0x26, 0x0a, "unexpected inexact segment" },
      675 +        { 0x26, 0x0b, "inline data length exceeded" },
      676 +        { 0x26, 0x0c, "invalid operation for copy source or destination" },
      677 +        { 0x26, 0x0d, "copy segment granularity violation" },
      678 +        { 0x27, 0x00, "write protected" },
      679 +        { 0x27, 0x01, "hardware write protected" },
      680 +        { 0x27, 0x02, "LUN software write protected" },
      681 +        { 0x27, 0x03, "associated write protect" },
      682 +        { 0x27, 0x04, "persistent write protect" },
      683 +        { 0x27, 0x05, "permanent write protect" },
      684 +        { 0x27, 0x06, "conditional write protect" },
      685 +        { 0x27, 0x80, "unable to overwrite data" },
      686 +        { 0x28, 0x00, "medium may have changed" },
      687 +        { 0x28, 0x01, "import or export element accessed" },
      688 +        { 0x29, 0x00, "power on, reset, or bus reset occurred" },
      689 +        { 0x29, 0x01, "power on occurred" },
      690 +        { 0x29, 0x02, "scsi bus reset occurred" },
      691 +        { 0x29, 0x03, "bus device reset message occurred" },
      692 +        { 0x29, 0x04, "device internal reset" },
      693 +        { 0x29, 0x05, "transceiver mode changed to single-ended" },
      694 +        { 0x29, 0x06, "transceiver mode changed to LVD" },
      695 +        { 0x29, 0x07, "i_t nexus loss occurred" },
      696 +        { 0x2a, 0x00, "parameters changed" },
      697 +        { 0x2a, 0x01, "mode parameters changed" },
      698 +        { 0x2a, 0x02, "log parameters changed" },
      699 +        { 0x2a, 0x03, "reservations preempted" },
      700 +        { 0x2a, 0x04, "reservations released" },
      701 +        { 0x2a, 0x05, "registrations preempted" },
      702 +        { 0x2a, 0x06, "asymmetric access state changed" },
      703 +        { 0x2a, 0x07, "implicit asymmetric access state transition failed" },
      704 +        { 0x2b, 0x00, "copy cannot execute since host cannot disconnect" },
      705 +        { 0x2c, 0x00, "command sequence error" },
      706 +        { 0x2c, 0x03, "current program area is not empty" },
      707 +        { 0x2c, 0x04, "current program area is empty" },
      708 +        { 0x2c, 0x06, "persistent prevent conflict" },
      709 +        { 0x2c, 0x07, "previous busy status" },
      710 +        { 0x2c, 0x08, "previous task set full status" },
      711 +        { 0x2c, 0x09, "previous reservation conflict status" },
      712 +        { 0x2d, 0x00, "overwrite error on update in place" },
      713 +        { 0x2e, 0x00, "insufficient time for operation" },
      714 +        { 0x2f, 0x00, "commands cleared by another initiator" },
      715 +        { 0x30, 0x00, "incompatible medium installed" },
      716 +        { 0x30, 0x01, "cannot read medium - unknown format" },
      717 +        { 0x30, 0x02, "cannot read medium - incompatible format" },
      718 +        { 0x30, 0x03, "cleaning cartridge installed" },
      719 +        { 0x30, 0x04, "cannot write medium - unknown format" },
      720 +        { 0x30, 0x05, "cannot write medium - incompatible format" },
      721 +        { 0x30, 0x06, "cannot format medium - incompatible medium" },
      722 +        { 0x30, 0x07, "cleaning failure" },
      723 +        { 0x30, 0x08, "cannot write - application code mismatch" },
      724 +        { 0x30, 0x09, "current session not fixated for append" },
      725 +        { 0x30, 0x0b, "WORM medium - Overwrite attempted" },
      726 +        { 0x30, 0x0c, "WORM medium - Cannot Erase" },
      727 +        { 0x30, 0x0d, "WORM medium - Integrity Check" },
      728 +        { 0x30, 0x10, "medium not formatted" },
      729 +        { 0x31, 0x00, "medium format corrupted" },
      730 +        { 0x31, 0x01, "format command failed" },
      731 +        { 0x31, 0x02, "zoned formatting failed due to spare linking" },
      732 +        { 0x31, 0x94, "WORM media corrupted" },
      733 +        { 0x32, 0x00, "no defect spare location available" },
      734 +        { 0x32, 0x01, "defect list update failure" },
      735 +        { 0x33, 0x00, "tape length error" },
      736 +        { 0x34, 0x00, "enclosure failure" },
      737 +        { 0x35, 0x00, "enclosure services failure" },
      738 +        { 0x35, 0x01, "unsupported enclosure function" },
      739 +        { 0x35, 0x02, "enclosure services unavailable" },
      740 +        { 0x35, 0x03, "enclosure services transfer failure" },
      741 +        { 0x35, 0x04, "enclosure services transfer refused" },
      742 +        { 0x36, 0x00, "ribbon, ink, or toner failure" },
      743 +        { 0x37, 0x00, "rounded parameter" },
      744 +        { 0x39, 0x00, "saving parameters not supported" },
      745 +        { 0x3a, 0x00, "medium not present" },
      746 +        { 0x3a, 0x01, "medium not present - tray closed" },
      747 +        { 0x3a, 0x02, "medium not present - tray open" },
      748 +        { 0x3a, 0x03, "medium not present - loadable" },
      749 +        { 0x3a, 0x04, "medium not present - medium auxiliary memory accessible" },
      750 +        { 0x3b, 0x00, "sequential positioning error" },
      751 +        { 0x3b, 0x01, "tape position error at beginning-of-medium" },
      752 +        { 0x3b, 0x02, "tape position error at end-of-medium" },
      753 +        { 0x3b, 0x08, "reposition error" },
      754 +        { 0x3b, 0x0c, "position past beginning of medium" },
      755 +        { 0x3b, 0x0d, "medium destination element full" },
      756 +        { 0x3b, 0x0e, "medium source element empty" },
      757 +        { 0x3b, 0x0f, "end of medium reached" },
      758 +        { 0x3b, 0x11, "medium magazine not accessible" },
      759 +        { 0x3b, 0x12, "medium magazine removed" },
      760 +        { 0x3b, 0x13, "medium magazine inserted" },
      761 +        { 0x3b, 0x14, "medium magazine locked" },
      762 +        { 0x3b, 0x15, "medium magazine unlocked" },
      763 +        { 0x3b, 0x16, "mechanical positioning or changer error" },
      764 +        { 0x3d, 0x00, "invalid bits in indentify message" },
      765 +        { 0x3e, 0x00, "LUN has not self-configured yet" },
      766 +        { 0x3e, 0x01, "LUN failure" },
      767 +        { 0x3e, 0x02, "timeout on LUN" },
      768 +        { 0x3e, 0x03, "LUN failed self-test" },
      769 +        { 0x3e, 0x04, "LUN unable to update self-test log" },
      770 +        { 0x3f, 0x00, "target operating conditions have changed" },
      771 +        { 0x3f, 0x01, "microcode has been changed" },
      772 +        { 0x3f, 0x02, "changed operating definition" },
      773 +        { 0x3f, 0x03, "inquiry data has changed" },
      774 +        { 0x3f, 0x04, "component device attached" },
      775 +        { 0x3f, 0x05, "device identifier changed" },
      776 +        { 0x3f, 0x06, "redundancy group created or modified" },
      777 +        { 0x3f, 0x07, "redundancy group deleted" },
      778 +        { 0x3f, 0x08, "spare created or modified" },
      779 +        { 0x3f, 0x09, "spare deleted" },
      780 +        { 0x3f, 0x0a, "volume set created or modified" },
      781 +        { 0x3f, 0x0b, "volume set deleted" },
      782 +        { 0x3f, 0x0c, "volume set deassigned" },
      783 +        { 0x3f, 0x0d, "volume set reassigned" },
      784 +        { 0x3f, 0x0e, "reported LUNs data has changed" },
      785 +        { 0x3f, 0x0f, "echo buffer overwritten" },
      786 +        { 0x3f, 0x10, "medium loadable" },
      787 +        { 0x3f, 0x11, "medium auxiliary memory accessible" },
      788 +        { 0x40, 0x00, "ram failure" },
      789 +        { 0x41, 0x00, "data path failure" },
      790 +        { 0x42, 0x00, "power-on or self-test failure" },
      791 +        { 0x43, 0x00, "message error" },
      792 +        { 0x44, 0x00, "internal target failure" },
      793 +        { 0x45, 0x00, "select or reselect failure" },
      794 +        { 0x46, 0x00, "unsuccessful soft reset" },
      795 +        { 0x47, 0x00, "scsi parity error" },
      796 +        { 0x47, 0x01, "data phase crc error detected" },
      797 +        { 0x47, 0x02, "scsi parity error detected during st data phase" },
      798 +        { 0x47, 0x03, "information unit iucrc error detected" },
      799 +        { 0x47, 0x04, "asynchronous information protection error detected" },
      800 +        { 0x47, 0x05, "protocol service crc error" },
      801 +        { 0x47, 0x7f, "some commands cleared by iscsi protocol event" },
      802 +        { 0x48, 0x00, "initiator detected error message received" },
      803 +        { 0x49, 0x00, "invalid message error" },
      804 +        { 0x4a, 0x00, "command phase error" },
      805 +        { 0x4b, 0x00, "data phase error" },
      806 +        { 0x4b, 0x01, "invalid target port transfer tag received" },
      807 +        { 0x4b, 0x02, "too much write data" },
      808 +        { 0x4b, 0x03, "ack/nak timeout" },
      809 +        { 0x4b, 0x04, "nak received" },
      810 +        { 0x4b, 0x05, "data offset error" },
      811 +        { 0x4c, 0x00, "logical unit failed self-configuration" },
      812 +        { 0x4d, 0x00, "tagged overlapped commands (ASCQ = queue tag)" },
      813 +        { 0x4e, 0x00, "overlapped commands attempted" },
      814 +        { 0x50, 0x00, "write append error" },
      815 +        { 0x50, 0x01, "data protect write append error" },
      816 +        { 0x50, 0x95, "data protect write append error" },
      817 +        { 0x51, 0x00, "erase failure" },
      818 +        { 0x52, 0x00, "cartridge fault" },
      819 +        { 0x53, 0x00, "media load or eject failed" },
      820 +        { 0x53, 0x01, "unload tape failure" },
      821 +        { 0x53, 0x02, "medium removal prevented" },
      822 +        { 0x54, 0x00, "scsi to host system interface failure" },
      823 +        { 0x55, 0x00, "system resource failure" },
      824 +        { 0x55, 0x01, "system buffer full" },
      825 +        { 0x55, 0x02, "insufficient reservation resources" },
      826 +        { 0x55, 0x03, "insufficient resources" },
      827 +        { 0x55, 0x04, "insufficient registration resources" },
      828 +        { 0x55, 0x05, "insufficient access control resources" },
      829 +        { 0x55, 0x06, "auxiliary memory out of space" },
      830 +        { 0x57, 0x00, "unable to recover TOC" },
      831 +        { 0x58, 0x00, "generation does not exist" },
      832 +        { 0x59, 0x00, "updated block read" },
      833 +        { 0x5a, 0x00, "operator request or state change input" },
      834 +        { 0x5a, 0x01, "operator medium removal request" },
      835 +        { 0x5a, 0x02, "operator selected write protect" },
      836 +        { 0x5a, 0x03, "operator selected write permit" },
      837 +        { 0x5b, 0x00, "log exception" },
      838 +        { 0x5b, 0x01, "threshold condition met" },
      839 +        { 0x5b, 0x02, "log counter at maximum" },
      840 +        { 0x5b, 0x03, "log list codes exhausted" },
      841 +        { 0x5c, 0x00, "RPL status change" },
      842 +        { 0x5c, 0x01, "spindles synchronized" },
      843 +        { 0x5c, 0x02, "spindles not synchronized" },
      844 +        { 0x5d, 0x00, "drive operation marginal, service immediately"
      845 +                    " (failure prediction threshold exceeded)" },
      846 +        { 0x5d, 0x01, "media failure prediction threshold exceeded" },
      847 +        { 0x5d, 0x02, "LUN failure prediction threshold exceeded" },
      848 +        { 0x5d, 0x03, "spare area exhaustion prediction threshold exceeded" },
      849 +        { 0x5d, 0x10, "hardware impending failure general hard drive failure" },
      850 +        { 0x5d, 0x11, "hardware impending failure drive error rate too high" },
      851 +        { 0x5d, 0x12, "hardware impending failure data error rate too high" },
      852 +        { 0x5d, 0x13, "hardware impending failure seek error rate too high" },
      853 +        { 0x5d, 0x14, "hardware impending failure too many block reassigns" },
      854 +        { 0x5d, 0x15, "hardware impending failure access times too high" },
      855 +        { 0x5d, 0x16, "hardware impending failure start unit times too high" },
      856 +        { 0x5d, 0x17, "hardware impending failure channel parametrics" },
      857 +        { 0x5d, 0x18, "hardware impending failure controller detected" },
      858 +        { 0x5d, 0x19, "hardware impending failure throughput performance" },
      859 +        { 0x5d, 0x1a, "hardware impending failure seek time performance" },
      860 +        { 0x5d, 0x1b, "hardware impending failure spin-up retry count" },
      861 +        { 0x5d, 0x1c, "hardware impending failure drive calibration retry count" },
      862 +        { 0x5d, 0x20, "controller impending failure general hard drive failure" },
      863 +        { 0x5d, 0x21, "controller impending failure drive error rate too high" },
      864 +        { 0x5d, 0x22, "controller impending failure data error rate too high" },
      865 +        { 0x5d, 0x23, "controller impending failure seek error rate too high" },
      866 +        { 0x5d, 0x24, "controller impending failure too many block reassigns" },
      867 +        { 0x5d, 0x25, "controller impending failure access times too high" },
      868 +        { 0x5d, 0x26, "controller impending failure start unit times too high" },
      869 +        { 0x5d, 0x27, "controller impending failure channel parametrics" },
      870 +        { 0x5d, 0x28, "controller impending failure controller detected" },
      871 +        { 0x5d, 0x29, "controller impending failure throughput performance" },
      872 +        { 0x5d, 0x2a, "controller impending failure seek time performance" },
      873 +        { 0x5d, 0x2b, "controller impending failure spin-up retry count" },
      874 +        { 0x5d, 0x2c, "controller impending failure drive calibration retry cnt" },
      875 +        { 0x5d, 0x30, "data channel impending failure general hard drive failure" },
      876 +        { 0x5d, 0x31, "data channel impending failure drive error rate too high" },
      877 +        { 0x5d, 0x32, "data channel impending failure data error rate too high" },
      878 +        { 0x5d, 0x33, "data channel impending failure seek error rate too high" },
      879 +        { 0x5d, 0x34, "data channel impending failure too many block reassigns" },
      880 +        { 0x5d, 0x35, "data channel impending failure access times too high" },
      881 +        { 0x5d, 0x36, "data channel impending failure start unit times too high" },
      882 +        { 0x5d, 0x37, "data channel impending failure channel parametrics" },
      883 +        { 0x5d, 0x38, "data channel impending failure controller detected" },
      884 +        { 0x5d, 0x39, "data channel impending failure throughput performance" },
      885 +        { 0x5d, 0x3a, "data channel impending failure seek time performance" },
      886 +        { 0x5d, 0x3b, "data channel impending failure spin-up retry count" },
      887 +        { 0x5d, 0x3c, "data channel impending failure drive calibrate retry cnt" },
      888 +        { 0x5d, 0x40, "servo impending failure general hard drive failure" },
      889 +        { 0x5d, 0x41, "servo impending failure drive error rate too high" },
      890 +        { 0x5d, 0x42, "servo impending failure data error rate too high" },
      891 +        { 0x5d, 0x43, "servo impending failure seek error rate too high" },
      892 +        { 0x5d, 0x44, "servo impending failure too many block reassigns" },
      893 +        { 0x5d, 0x45, "servo impending failure access times too high" },
      894 +        { 0x5d, 0x46, "servo impending failure start unit times too high" },
      895 +        { 0x5d, 0x47, "servo impending failure channel parametrics" },
      896 +        { 0x5d, 0x48, "servo impending failure controller detected" },
      897 +        { 0x5d, 0x49, "servo impending failure throughput performance" },
      898 +        { 0x5d, 0x4a, "servo impending failure seek time performance" },
      899 +        { 0x5d, 0x4b, "servo impending failure spin-up retry count" },
      900 +        { 0x5d, 0x4c, "servo impending failure drive calibration retry count" },
      901 +        { 0x5d, 0x50, "spindle impending failure general hard drive failure" },
      902 +        { 0x5d, 0x51, "spindle impending failure drive error rate too high" },
      903 +        { 0x5d, 0x52, "spindle impending failure data error rate too high" },
      904 +        { 0x5d, 0x53, "spindle impending failure seek error rate too high" },
      905 +        { 0x5d, 0x54, "spindle impending failure too many block reassigns" },
      906 +        { 0x5d, 0x55, "spindle impending failure access times too high" },
      907 +        { 0x5d, 0x56, "spindle impending failure start unit times too high" },
      908 +        { 0x5d, 0x57, "spindle impending failure channel parametrics" },
      909 +        { 0x5d, 0x58, "spindle impending failure controller detected" },
      910 +        { 0x5d, 0x59, "spindle impending failure throughput performance" },
      911 +        { 0x5d, 0x5a, "spindle impending failure seek time performance" },
      912 +        { 0x5d, 0x5b, "spindle impending failure spin-up retry count" },
      913 +        { 0x5d, 0x5c, "spindle impending failure drive calibration retry count" },
      914 +        { 0x5d, 0x60, "firmware impending failure general hard drive failure" },
      915 +        { 0x5d, 0x61, "firmware impending failure drive error rate too high" },
      916 +        { 0x5d, 0x62, "firmware impending failure data error rate too high" },
      917 +        { 0x5d, 0x63, "firmware impending failure seek error rate too high" },
      918 +        { 0x5d, 0x64, "firmware impending failure too many block reassigns" },
      919 +        { 0x5d, 0x65, "firmware impending failure access times too high" },
      920 +        { 0x5d, 0x66, "firmware impending failure start unit times too high" },
      921 +        { 0x5d, 0x67, "firmware impending failure channel parametrics" },
      922 +        { 0x5d, 0x68, "firmware impending failure controller detected" },
      923 +        { 0x5d, 0x69, "firmware impending failure throughput performance" },
      924 +        { 0x5d, 0x6a, "firmware impending failure seek time performance" },
      925 +        { 0x5d, 0x6b, "firmware impending failure spin-up retry count" },
      926 +        { 0x5d, 0x6c, "firmware impending failure drive calibration retry count" },
      927 +        { 0x5d, 0xff, "failure prediction threshold exceeded (false)" },
      928 +        { 0x5e, 0x00, "low power condition active" },
      929 +        { 0x5e, 0x01, "idle condition activated by timer" },
      930 +        { 0x5e, 0x02, "standby condition activated by timer" },
      931 +        { 0x5e, 0x03, "idle condition activated by command" },
      932 +        { 0x5e, 0x04, "standby condition activated by command" },
      933 +        { 0x60, 0x00, "lamp failure" },
      934 +        { 0x61, 0x00, "video acquisition error" },
      935 +        { 0x62, 0x00, "scan head positioning error" },
      936 +        { 0x63, 0x00, "end of user area encountered on this track" },
      937 +        { 0x63, 0x01, "packet does not fit in available space" },
      938 +        { 0x64, 0x00, "illegal mode for this track" },
      939 +        { 0x64, 0x01, "invalid packet size" },
      940 +        { 0x65, 0x00, "voltage fault" },
      941 +        { 0x66, 0x00, "automatic document feeder cover up" },
      942 +        { 0x67, 0x00, "configuration failure" },
      943 +        { 0x67, 0x01, "configuration of incapable LUNs failed" },
      944 +        { 0x67, 0x02, "add LUN failed" },
      945 +        { 0x67, 0x03, "modification of LUN failed" },
      946 +        { 0x67, 0x04, "exchange of LUN failed" },
      947 +        { 0x67, 0x05, "remove of LUN failed" },
      948 +        { 0x67, 0x06, "attachment of LUN failed" },
      949 +        { 0x67, 0x07, "creation of LUN failed" },
      950 +        { 0x67, 0x08, "assign failure occurred" },
      951 +        { 0x67, 0x09, "multiply assigned LUN" },
      952 +        { 0x67, 0x0a, "set target port groups command failed" },
      953 +        { 0x68, 0x00, "logical unit not configured" },
      954 +        { 0x69, 0x00, "data loss on logical unit" },
      955 +        { 0x69, 0x01, "multiple LUN failures" },
      956 +        { 0x69, 0x02, "parity/data mismatch" },
      957 +        { 0x6a, 0x00, "informational, refer to log" },
      958 +        { 0x6b, 0x00, "state change has occurred" },
      959 +        { 0x6b, 0x01, "redundancy level got better" },
      960 +        { 0x6b, 0x02, "redundancy level got worse" },
      961 +        { 0x6c, 0x00, "rebuild failure occurred" },
      962 +        { 0x6d, 0x00, "recalculate failure occurred" },
      963 +        { 0x6e, 0x00, "command to logical unit failed" },
      964 +        { 0x6f, 0x00, "copy protect key exchange failure authentication failure" },
      965 +        { 0x6f, 0x01, "copy protect key exchange failure key not present" },
      966 +        { 0x6f, 0x02, "copy protect key exchange failure key not established" },
      967 +        { 0x6f, 0x03, "read of scrambled sector without authentication" },
      968 +        { 0x6f, 0x04, "media region code is mismatched to LUN region" },
      969 +        { 0x6f, 0x05, "drive region must be permanent/region reset count error" },
      970 +        { 0x70, 0xffff, "decompression exception short algorithm id of ASCQ" },
      971 +        { 0x71, 0x00, "decompression exception long algorithm id" },
      972 +        { 0x72, 0x00, "session fixation error" },
      973 +        { 0x72, 0x01, "session fixation error writing lead-in" },
      974 +        { 0x72, 0x02, "session fixation error writing lead-out" },
      975 +        { 0x72, 0x03, "session fixation error - incomplete track in session" },
      976 +        { 0x72, 0x04, "empty or partially written reserved track" },
      977 +        { 0x72, 0x05, "no more track reservations allowed" },
      978 +        { 0x73, 0x00, "cd control error" },
      979 +        { 0x73, 0x01, "power calibration area almost full" },
      980 +        { 0x73, 0x02, "power calibration area is full" },
      981 +        { 0x73, 0x03, "power calibration area error" },
      982 +        { 0x73, 0x04, "program memory area update failure" },
      983 +        { 0x73, 0x05, "program memory area is full" },
      984 +        { 0x73, 0x06, "rma/pma is almost full" },
      985 +        { 0xffff, 0xffff, NULL }
 986  986  };
 987  987  
 988  988  char *
 989  989  scsi_esname(uint_t key, char *tmpstr)
 990  990  {
 991  991          int i = 0;
 992  992  
 993  993          while (extended_sense_list[i].asc != 0xffff) {
 994  994                  if (key == extended_sense_list[i].asc) {
 995  995                          return ((char *)extended_sense_list[i].message);
↓ open down ↓ 1701 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX