union NVME_COMMAND_STATUS (nvme.h)

Contient des informations sur la status d’une commande.

Cette structure est utilisée dans le champ État du NVME_COMPLETION_ENTRY et dans le champ État du NVME_ERROR_INFO_LOG pour indiquer la status d’une commande terminée.

Syntaxe

typedef union {
  struct {
    USHORT P : 1;
    USHORT SC : 8;
    USHORT SCT : 3;
    USHORT Reserved : 2;
    USHORT M : 1;
    USHORT DNR : 1;
  } DUMMYSTRUCTNAME;
  USHORT AsUshort;
} NVME_COMMAND_STATUS, *PNVME_COMMAND_STATUS;

Membres

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.P

Indique si une entrée de file d’attente d’achèvement est une nouvelle entrée.

Les valeurs de balise de phase (P) pour toutes les entrées de file d’attente d’achèvement doivent être initialisées sur « 0 » par le logiciel hôte avant de définir le champ EN du NVME_CONTROLLER_CONFIGURATION sur 1.

Lorsque le contrôleur place une entrée dans la file d’attente d’achèvement, il inverse la balise de phase pour permettre au logiciel hôte d’identifier une nouvelle entrée. Plus précisément, pour le premier ensemble d’entrées de file d’attente d’achèvement après en est défini sur 1, toutes les balises de phase sont définies sur 1 au moment de la publication. Pour le deuxième ensemble d’entrées de file d’attente d’achèvement, lorsque le contrôleur a encapsulé en haut de la file d’attente d’achèvement, toutes les balises de phase sont effacées au 0 moment de leur publication. La valeur de la balise de phase est inversée à chaque passage dans la file d’attente d’achèvement.

DUMMYSTRUCTNAME.SC

Indique un code status identifiant toute erreur ou status informations pour la commande.

DUMMYSTRUCTNAME.SCT

Valeur NVME_STATUS_TYPES qui indique le type de status le contrôleur retourne.

DUMMYSTRUCTNAME.Reserved

DUMMYSTRUCTNAME.M

Indique s’il existe des informations status supplémentaires pour la commande.

Lorsque cette valeur est définie sur 1, il existe d’autres informations status pour cette commande dans le journal Informations sur les erreurs qui peuvent être récupérées avec la commande Obtenir la page du journal.

Lorsque cette valeur est effacée en 0, il n’existe aucune information status supplémentaire pour cette commande.

DUMMYSTRUCTNAME.DNR

Indique si la commande réussit si elle est envoyée de nouveau.

Lorsque cette valeur est définie sur 1, elle indique que si la même commande est renvoyée, elle est censée échouer.

Lorsque cette valeur est effacée en 0, elle indique que la même commande peut réussir en cas de nouvelle tentative.

Si une commande est abandonnée en raison d’une récupération d’erreur limitée dans le temps, ce champ doit être effacé sur 0. Si les champs SCT et SC sont effacés, 0h ce champ doit être effacé en 0.

AsUshort

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10
En-tête nvme.h

Voir aussi