Conditions d'erreur du pilote de périphérique du client de bande USB
Outre les erreurs répertoriées, les sous-routines ioctl, open, readet write de l'unité de bande USB échouent dans les cas suivants:
| Valeur | Descriptif |
|---|---|
| ENCORE UNE FOIS | Indique qu'une tentative est effectuée pour ouvrir un périphérique, qui est déjà ouvert. |
| EBUSY | Indique que l'unité cible est réservée par un autre initiateur. |
| EINVAL |
|
| EIO |
|
| EMEDIA | Indique qu'une opération d'ouverture est tenta pour un adaptateur qui possède déjà le nombre maximal autorisé d'unités ouvertes. |
| ENOTREADY | Indique qu'il n'y a pas de bande dans l'unité ou que l'unité n'est pas prête. |
| ENXIO | Indique qu'il y a eu une tentative d'écriture sur une bande, qui a déjà atteint EOM. |
| EPERM | Indique que le sous-programme requiert les droits appropriés. |
| ETIMEDOUT | Indique qu'une commande a expiré. |
| EWRPROTECT |
|
Fiabilité et facilité de maintenance
Les erreurs suivantes sont renvoyées par les unités de bande:
| Erreur | Descriptif |
|---|---|
| COMMANDE ABANDONNÉ | Indique que l'unité a mis fin à la commande. |
| Vérification à vide | Indique qu'une commande de lecture a rencontré une bande vierge. |
| PROTECTION DES DONNÉES | Indique qu'une opération d'écriture a été tenté sur une bande protégée en écriture. |
| BON ACHÈVEMENT | Indique que la commande a abouti. |
| Erreur matérielle | Indique qu'une erreur matérielle irrémédiable s'est produite lors de l'exécution de la commande ou lors d'un autotest. |
| Illegal request | Indique une commande non valide ou un paramètre de commande non valide. |
| Erreur de support | Indique que la commande s'est terminée avec une condition d'erreur de support irrémédiable. Cette condition peut être causée par une bande magnétique ou une tête sale. |
| Non prêt | Indique que l'unité logique est hors ligne. |
| Erreur récupérée | Indique que la commande a abouti après l'application de certaines opérations de reprise. |
| Attention unité | Indique que l'unité est réinitialisée ou que la puissance est activée. |
Les erreurs de commande moyenne, matérielle et infructueuse de la liste précédente doivent être consignées chaque fois qu'elles se produisent. L'erreur ABORTED
COMMAND peut être remédiable, mais elle est consignée en cas d'échec de la reprise. Pour les types d'erreur RECOVERED ERROR et ABORTED
COMMAND récupérés, les seuils sont conservés ; lorsqu'ils sont dépassés, une erreur est consignée. Les seuils sont ensuite supprimés.
/* Bulk transfer cmd and status blocks */
typedef struct mstor_cbw {
uint32_t cbw_signature; /* Always "USBC" little endian */
uint32_t cbw_tag; /* Command identification */
fld32_t cbw_dlen; /* Data length */
uchar cbw_flags; /* Indicates data in or data out */
uchar cbw_lun; /* Logical unit number, 0-15 */
uchar cbw_cblen; /* Significant bytes of the cmd blk */
uchar cbw_cb[16]; /* Command block itself */
uchar cbw_rsvd;
} mstor_cbw_t;
/* For error logging */
struct usbtape_err_rec {
struct err_rec0 log;
uint cmd_error;
mstor_cbw_t cbw;
char sense_data[168];
uint dd1; /* reserved for dd use */
uint dd2; /* reserved for dd use */
uint dd3; /* reserved for dd use */
uint dd4; /* reserved for dd use */
uint dd5; /* reserved for dd use */
uint dd6; /* reserved for dd use */
uint dd7; /* reserved for dd use */
uint dd8; /* reserved for dd use */
};
LABEL: SC_TAPE_ERRx
IDENTIFIER: xxxxxxxx
Date/Time: Thu Mar 12 05:20:27 CDT 2009
Sequence Number: 3829
Machine Id: 0000097AD400
Node Id: sitar04
Class: H
Type: PERM
Resource Name: rmt0
Resource Class: tape
Resource Type: 0806500c
Location:
Description
Probable Causes
Failure Causes
Recommended Actions
Detail Data
SENSE DATA
1111 1111 2222 2222 3333 3333 4444 4444 5566 7788 8888 8888 8888 8888 8888 8888
8888 8899 aaaa kkaa aaaa aaaa aaaa aaaa ccqq aaaa aaaa aaaa aaaa aaaa aaaa aaaa
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa bbbb bbbb cccc cccc dddd dddd
Data Representation Legend
--------------------------
cmd_error 1 Command Error Value
(cmd_error values can be negative which are logged as 2's complement.
For these USB specific error values refer below or /usr/include/sys/usbdi.h.
For error values which are positive Please refer to /usr/include/sys/errno.h file for error description)
Bulk transfer Command and Status Blocks
cbw_signature 2 Always .USBC. in ASCII - “5553 4243”
cbw_tag 3 Command Identification
cbw_dlen 4 Data Length
cbw_flags 5 Indicates Data IN or OUT
cbw_lun 6 LUN Id
cbw_cblen 7 CDB (Command Descriptor Bytes) length
cbw_cb 8 CDB
cbw_rsvd 9 Reserved
Sense data
Sense data a
Sense key k
ASC c
ASCQ q
Read Transfer Count b In bytes
Write Transfer Count c In bytes
Location d Device Driver log locationValeurs d'enregistrement d'erreur pour les erreurs de l'unité de bande
Le tableau suivant répertorie les zones définies dans le modèle d'enregistrement d'erreur pour les erreurs d'unité de bande:
| ID d'erreur | Descriptif |
|---|---|
| SC_TAPE_ERR1 | Erreur de bande permanente. Cette erreur est consignée lorsque le support de bande a rencontré une erreur. |
| SC_TAPE_ERR2 | Erreur matérielle de bande permanente. Cette erreur est consignée lorsque l'erreur matérielle de bande est détectée ou que la commande est abandonnée par l'unité et que toutes les tentatives de résolution de l'erreur ont échoué. |
| SC_TAPE_ERR3 | Echec de l'unité de bande temporaire. Cette erreur n'est pas consignée dans le pilote de bande USB (Universal Serial Bus). |
| SC_TAPE_ERR4 | Echec de l'unité de bande permanente. Cette erreur est consignée lorsque l'échec de l'adaptateur est détecté et que toutes les tentatives ont échoué. |
| SC_TAPE_ERR5 | Erreur de bande inconnue. Cette erreur est consignée lorsque la bande renvoie une condition de vérification, mais les données de détection ne contiennent pas d'informations valides. |
| SC_TAPE_ERR6 | Erreur d'opération de bande temporaire. L'unité de bande doit être nettoyée. |
| SC_TAPE_ERR7 | Erreur d'information. Les journaux d'erreurs liés au service d'accès distant (RAS) sont dus à des échecs de vérification de l'intégrité du pilote interne. |
| SC_TAPE_ERR8 | Echec de l'unité de bande temporaire. Cette erreur n'est pas consignée dans le pilote de bande USB. |
Valeurs d'enregistrement d'erreur pour les erreurs de support de l'unité de bande
Le tableau suivant répertorie les zones définies dans le modèle d'enregistrement d'erreur pour les erreurs de support de l'unité de bande:
| Article | Descriptif |
|---|---|
| Commentaire | Erreur de support de bande. |
| Classe | Valeur H indiquant une erreur matérielle. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur False qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Valeur de Perm qui indique un échec permanent. |
| Desc. | Valeur de 1332 indiquant une défaillance d'une opération de bande. |
| Prob_Causes | Une valeur de 5003 qui indique un support de bande. |
| Causes utilisateur | Une valeur de 5100 indiquant une erreur avec l'unité de bande et une valeur 7401 indiquant une erreur avec le support défectueux. |
| Actions utilisateur | Valeur de 1601 indiquant que le support amovible doit être remplacé et que l'opération doit être à nouveau essayable. Ou, elle correspond à une valeur de 0000 qui indique que des procédures d'identification des incidents doivent être exécutées. |
| Inst_Causes | Aucun(e). |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 5003 qui indique un support de bande. |
| Actions Echecs | Valeur de 1601 indiquant que le support amovible doit être remplacé et que l'opération doit être à nouveau essayable. Ou, elle correspond à une valeur de 0000 qui indique que des procédures d'identification des incidents doivent être exécutées. |
La zone Detail_Data contient le type de commande, l'unité et le statut de l'adaptateur, ainsi que les informations de détection de demande provenant de l'unité en erreur. La zone Detail_Data est contenue dans la structure err_rec . Cette structure est définie dans le fichier /usr/include/sys/errids.h .
Valeurs d'enregistrement d'erreur pour les erreurs de la commande d'annulation de bande ou de matériel
Les zones suivantes de la structure err_hdr sont définies dans le fichier /usr/include/sys/erec.h pour les erreurs matérielles et les erreurs de commande abandonnées:
| Article | Descriptif |
|---|---|
| Commentaire | Valeur du matériel de bande ou erreur de commande abandonnée. |
| Classe | Valeur H indiquant une erreur matérielle. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur FALSE qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Valeur de Perm qui indique un échec permanent. |
| Desc. | Valeur de 1331 indiquant une défaillance de l'unité de bande. |
| Prob_Causes | Valeur de 6314 indiquant une erreur d'unité de bande. |
| Causes utilisateur | Aucun(e). |
| Actions utilisateur | Valeur 0000 indiquant que des procédures d'identification des incidents doivent être exécutées. |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 5003 indiquant le cas d'échec est la bande et une valeur de 6314 indiquant le cas d'échec est l'unité de bande. |
| Actions Echecs | Valeur 0000 indiquant que des procédures d'identification des incidents doivent être exécutées. |
La zone Detail_Data contient le type de commande, l'unité et le statut de l'adaptateur, ainsi que les informations de détection de demande provenant de l'unité en erreur. La zone Detail_Data est contenue dans la structure err_rec . Cette structure est définie dans le fichier /usr/include/sys/errids.h . La structure usbtape_err_rec décrit les informations contenues dans la zone Detail_Data .
Valeurs d'enregistrement d'erreur pour le seuil d'erreur de récupération de bande dépassé
Les zones suivantes sont définies dans la structure err_hdr définie dans le fichier /usr/include/sys/erec.h pour les erreurs récupérées qui ont dépassé le compteur de seuil:
| Article | Descriptif |
|---|---|
| Commentaire | Indique que le seuil des erreurs de récupération de bande est dépassé. |
| Classe | Valeur H indiquant une erreur matérielle. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur False qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Valeur de TEMP indiquant un incident temporaire. |
| Desc. | Valeur de 1331 indiquant une défaillance de l'unité de bande. |
| Prob_Causes | Une valeur de 6314 indiquant la cause probable est l'unité de bande. |
| Causes utilisateur | Une valeur de 5100 indique que le support est défectueux et une valeur de 7401 indiquant que la tête de lecture / écriture est sale. |
| Actions utilisateur | Valeur de 1601 indiquant que le support amovible doit être remplacé et que l'opération doit être à nouveau essayable. Ou, elle correspond à une valeur de 0000 qui indique que des procédures d'identification des incidents doivent être exécutées. |
| Inst_Causes | Aucun(e). |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 5003 indiquant la cause de l'échec est la bande et une valeur de 6314 indiquant que la cause de l'échec est l'unité de bande. |
| Actions Echecs | Une valeur de 0000 qui indique des procédures de détermination des incidents doit être effectuée. |
La zone Detail_Data contient le type de commande, l'unité et le statut de l'adaptateur, ainsi que les informations de détection de demande provenant de l'unité en erreur. Cette zone est contenue dans la structure err_rec . La structure err_rec est définie dans le fichier /usr/include/sys/errids.h . La zone Detail_Data indique également le type d'erreur du seuil dépassé. La structure usbtape_err_rec décrit les informations contenues dans la zone Detail_Data .
Valeurs d'enregistrement d'erreur pour les erreurs détectées par l'adaptateur USB de bande magnétique
Les zones suivantes de la structure err_hdr sont définies dans le fichier /usr/include/sys/erec.h pour les erreurs détectées par l'adaptateur:
| Article | Descriptif |
|---|---|
| Commentaire | Une erreur détectée par l'adaptateur Fibre Channel de bande magnétique. |
| Classe | Valeur H indiquant une erreur matérielle. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur FALSE qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Valeur de PERM qui indique un échec permanent. |
| Desc. | Valeur de 1331 indiquant une défaillance de l'unité de bande. |
| Prob_Causes | Les valeurs de 3300 qui indiquent une défaillance de l'adaptateur et une valeur de 6314 indiquant l'échec de l'unité de bande. |
| Causes utilisateur | Aucun(e). |
| Actions utilisateur | Valeur 0000 indiquant que des procédures d'identification des incidents doivent être exécutées. |
| Inst_Causes | Aucun(e). |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 3300 indique une défaillance de l'adaptateur et une valeur de 6314 indiquant l'échec de l'unité de bande. |
| Actions Echecs | Une valeur de 0000 qui indique des procédures de détermination des incidents doit être effectuée. |
La zone Detail_Data contient le type de commande et le statut de l'adaptateur. Cette zone est contenue dans la structure err_rec définie par le fichier /usr/include/sys/err_rec.h . Les informations de détection des demandes ne sont pas disponibles avec ce type d'erreur. La structure usbtape_err_rec décrit les informations contenues dans la zone Detail_Data .
Valeurs d'enregistrement d'erreur pour les erreurs de nettoyage de l'unité de bande
Certaines unités de bande renvoient des erreurs lorsqu'elles ont besoin d'être nettoyages. Les erreurs qui se produisent lorsque l'unité a besoin d'être nettoyant sont regroupées sous cette classe.
| Article | Descriptif |
|---|---|
| Commentaire | Indique que l'unité de bande a besoin d'être nettoyant. |
| Classe | Valeur H indiquant une erreur matérielle. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur FALSE qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Valeur de TEMP indiquant un incident temporaire. |
| Desc. | Valeur de 1332 indiquant une erreur d'opération de bande. |
| Prob_Causes | Une valeur de 6314 indique que la cause probable est l'unité de bande. |
| Causes utilisateur | Valeur 7401 indiquant une tête de lecture / écriture sale. |
| Actions utilisateur | Valeur 0000 indiquant que des procédures d'identification des incidents doivent être exécutées. |
| Inst_Causes | Aucun(e). |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 6314 indique que la cause est l'unité de bande. |
| Actions Echecs | Une valeur de 0000 qui indique des procédures de détermination des incidents doit être effectuée. |
La zone Detail_Data contient le type de commande et le statut de l'adaptateur, ainsi que les informations de détection de demande de l'unité concernée par l'erreur. Cette zone est contenue dans la structure err_rec définie par le fichier /usr/include/sys/errids.h . La structure usbtape_err_rec décrit les informations contenues dans la zone Detail_Data .
Erreur lors de l'enregistrement des valeurs pour les erreurs inconnues
Les erreurs qui se produisent pour des raisons inconnues sont regroupées dans cette classe. Les erreurs de protection des données entrent dans cette catégorie. Ces erreurs, détectées par le pilote de périphérique de bande, ne sont jamais visibles sur l'unité de bande.
La structure err_hdr pour les erreurs inconnues décrit les zones suivantes:
| Article | Descriptif |
|---|---|
| Commentaire | Erreur de bande inconnue. |
| Classe | Toutes les classes d'erreur. |
| Rapport | La valeur True indique que cette erreur doit être incluse lorsqu'un rapport d'erreur est généré. |
| Journal | Une valeur True indique qu'une entrée de journal des erreurs doit être créée lorsque cette erreur se produit. |
| Alerte | La valeur FALSE qui indique cette erreur ne peut pas être mise en alerte. |
| Type_Err | Une valeur UNKN indiquant le type d'erreur est inconnue. |
| Desc. | Une valeur de 0xFE00 qui indique la description de l'erreur est inconnue. |
| Prob_Causes | Indique les valeurs suivantes:
|
| Causes utilisateur | Aucun(e). |
| Actions utilisateur | Aucun(e). |
| Inst_Causes | Aucun(e). |
| Actions-Inst_instance | Aucun(e). |
| Echecs | Une valeur de 0xFFFF qui indique les causes de l'échec est inconnue. |
| Actions Echecs | Valeur 0000 indiquant que des procédures de détermination des incidents doivent être exécutées. |
La zone Detail_Data contient le type de commande et le statut de l'adaptateur, ainsi que les informations de détection de demande provenant de l'unité en erreur. La zone Detail_Data est contenue dans la structure err_rec . Cette zone est contenue dans le fichier /usr/include/sys/errids.h . La structure usbtape_err_rec décrit les informations contenues dans la zone Detail_Data .
Reportez-vous à la spécification SCSI de l'unité applicable pour le format des informations de détection des demandes particulières.