StorPortDeviceBusy, fonction (storport.h)
La routine StorPortDeviceBusy avertit le pilote de port que l’unité logique spécifiée est actuellement occupée et gère les demandes en attente.
Syntaxe
STORPORT_API BOOLEAN StorPortDeviceBusy(
[in] PVOID HwDeviceExtension,
[in] UCHAR PathId,
[in] UCHAR TargetId,
[in] UCHAR Lun,
[in] ULONG RequestsToComplete
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique matériel. Il s’agit d’une zone de stockage par HBA que le pilote de port alloue et initialise pour le compte du pilote miniport. Les pilotes miniport stockent généralement des informations spécifiques à l’adaptateur HBA dans cette extension, telles que l’état de l’adaptateur HBA et les plages d’accès mappées pour l’adaptateur HBA. Cette zone est disponible pour le pilote miniport immédiatement après l’appel du pilote miniport StorPortInitialize. Le pilote de port libère cette mémoire lorsqu’il supprime l’appareil.
[in] PathId
Identifie le bus SCSI.
[in] TargetId
Identifie le contrôleur ou l’appareil cible sur les bus donnés.
[in] Lun
Identifie l’unité logique pour le contrôleur ou l’appareil cible donné.
[in] RequestsToComplete
Indique le nombre de requêtes que l’unité logique doit effectuer avant de reprendre les requêtes d’E/S sur le pilote miniport. Si RequestsToComplete est supérieur au nombre de requêtes actuellement en attente, le pilote Storport termine toutes les demandes en attente à l’unité logique avant de reprendre les demandes.
Valeur de retour
StorPortDeviceBusy retourne TRUE si le pilote miniport a réussi à notifier le pilote de port, FALSE si ce n’est pas le cas.
Remarques
Aucun journal des erreurs n’est généré lorsqu’un appareil est occupé.
Le pilote de port n’émet aucune nouvelle requête à l’unité logique tant que la file d’attente de l’unité logique n’a pas été vidée jusqu’à un niveau suffisant où le traitement peut continuer.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
d’en-tête | storport.h (include Storport.h) |
bibliothèque | Storport.lib |