NDK_FN_READ fonction de rappel (ndkpi.h)
La fonction NdkRead (NDK_FN_READ) publie une demande de lecture sur une paire de files d’attente NDK (QP).
Syntaxe
NDK_FN_READ NdkFnRead;
NTSTATUS NdkFnRead(
[in] NDK_QP *pNdkQp,
[in, optional] PVOID RequestContext,
const NDK_SGE *pSgl,
[in] ULONG nSge,
[in] UINT64 RemoteAddress,
[in] UINT32 RemoteToken,
[in] ULONG Flags
)
{...}
Paramètres
[in] pNdkQp
Pointeur vers un objet de paire de files d’attente (QP) NDK (NDK_QP).
[in, optional] RequestContext
Valeur de contexte à retourner dans le membre RequestContext de la structure NDK_RESULT pour cette requête.
pSgl
Tableau de structures SGE (NDK_SGE) qui représentent les mémoires tampons dans laquelle placer les données entrantes.
[in] nSge
Nombre de structures SGE dans le tableau spécifié dans le paramètre pSgl .
[in] RemoteAddress
Adresse distante à lire à partir de qui est présentée dans l’ordre d’octets de l’hôte local. Le consommateur NDK peut ajouter un décalage à la valeur fournie à distance.
[in] RemoteToken
Jeton de mémoire fourni à distance qui est un tableau opaque d’octets du consommateur NDK.
[in] Flags
Or au niveau du bit d’indicateurs qui spécifie les opérations autorisées. Les indicateurs suivants sont pris en charge :
Valeur | Signification |
---|---|
|
Indique que la réussite de cette requête ne génère pas d’événement d’achèvement dans la file d’attente d’achèvement sortante. Toutefois, les demandes qui échouent génèrent un événement dans la file d’attente d’achèvement. |
|
Indique que toutes les demandes de lecture antérieures doivent être terminées avant que le matériel commence à traiter cette demande. |
|
Si cet indicateur est défini et que le fournisseur signale également NDK_ADAPTER_FLAG_RDMA_READ_LOCAL_INVALIDATE_SUPPORTED fonctionnalité d’adaptateur dans la structure NDK_ADAPTER_INFO , la réussite de l’exécution de la fonction NdkRead signifie que la première mémoire tampon spécifiée dans le paramètre pSgl est invalidée. L’échec de la saisie semi-automatique laisse la mémoire tampon et le jeton dans un état non défini. Cet indicateur est ignoré si le fournisseur ne signale pas NDK_ADAPTER_FLAG_RDMA_READ_LOCAL_INVALIDATE_SUPPORTED fonctionnalité d’adaptateur dans la structure NDK_ADAPTER_INFO .
Note Cet indicateur est pris en charge uniquement dans NDKPI 1.2 (Windows Server 2012 R2) et versions ultérieures. |
|
Indique au fournisseur NDK qu’il peut différer l’indication de la demande au matériel pour traitement. Pour plus d’informations sur cet indicateur, consultez Schéma de traitement différé NDKPI.
Note Cet indicateur est pris en charge uniquement dans NDKPI 1.2 (Windows Server 2012 R2) et versions ultérieures. |
Valeur retournée
La fonction NdkRead retourne l’un des codes NTSTATUS suivants.
Code de retour | Description |
---|---|
|
La demande a été publiée avec succès. Une entrée d’achèvement est mise en file d’attente vers le CQ une fois la demande de travail terminée. |
|
Le QP n’est pas connecté. |
|
La demande a essayé de lire au-delà de la taille de la mémoire distante. |
|
Une erreur est survenue. |
Remarques
NdkRead publie une demande de lecture sur une paire de files d’attente (QP).
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Aucune prise en charge, prise en charge dans NDIS 6.30 et versions ultérieures. |
Serveur minimal pris en charge | Windows Server 2012 |
Plateforme cible | Windows |
En-tête | ndkpi.h (incluez Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |
Voir aussi
Schéma de traitement différé NDKPI