Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il bordo del protocollo del commutatore estendibile Hyper-V emette una richiesta di metodo OID (Object Identifier) di OID_SWITCH_NIC_SAVE durante un'operazione per salvare i dati di runtime per una porta switch estendibile e la relativa connessione alla scheda di rete. L'estensione restituisce questi dati in modo che i dati di runtime possano essere salvati e ripristinati in un secondo momento. Dopo aver salvato i dati di runtime, i dati vengono ripristinati tramite richieste di set OID di OID_SWITCH_NIC_RESTORE.
Il membro InformationBuffer della struttura NDIS_OID_REQUEST contiene un puntatore a una struttura NDIS_SWITCH_NIC_SAVE_STATE. Questa struttura viene allocata dal bordo del protocollo del commutatore estendibile.
Osservazioni
Quando riceve la richiesta del metodo OID di OID_SWITCH_NIC_SAVE, l'estensione dell'opzione estendibile salva i dati di runtime eseguendo le operazioni seguenti:
L'estensione salva i dati all'interno della struttura NDIS_SWITCH_NIC_SAVE_STATE a partire da SaveDataOffset byte dall'inizio della struttura.
Se l'SaveDataSize fornito non è sufficientemente grande da contenere i dati di salvataggio necessari, l'estensione imposta il campo byte BytesNeededed su NDIS_SIZEOF_NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 più la quantità di buffer necessaria per contenere i dati di salvataggio e completa l'OID con NDIS_STATUS_BUFFER_TOO_SHORT. L'OID verrà riemesso con le dimensioni necessarie.
L'estensione popola i campi ExtensionId e ExtensionFriendlyName con il proprio identificatore e nome e completa la richiesta del metodo OID con NDIS_STATUS_SUCCESS. In questo modo il bordo del protocollo dell'opzione estendibile esegue un'altra richiesta di metodo OID per consentire all'estensione di restituire più dati di salvataggio o consentire ad altre estensioni nello stack di salvare i propri dati.
Nota Se l'estensione non dispone di dati di runtime da salvare, deve chiamare NdisFOidRequest per inoltrare questa richiesta di metodo OID alle estensioni sottostanti nello stack di driver dell'opzione estendibile. Per altre informazioni su questa procedura, vedere filtro delle richieste OID in un driver di filtro NDIS.
L'opzione estendibile Hyper-V popola Header, PortId, NicIdex, SaveDataSize e SaveDataOffset campi della struttura prima di emettere l'OID. L'estensione non può modificare questi campi.
Le richieste di metodo OID di OID_SWITCH_NIC_SAVE vengono infine gestite dal bordo miniport sottostante del commutatore estendibile. Dopo che questa richiesta del metodo OID è stata ricevuta dal bordo miniport dell'interruttore estendibile, completa la richiesta OID con NDIS_STATUS_SUCCESS. In questo modo viene informato il bordo del protocollo del commutatore estendibile che tutte le estensioni nello stack di driver del commutatore estendibile sono state sottoposte a query per i dati di runtime. Il bordo del protocollo dell'opzione estendibile invia quindi una richiesta di set OID di OID_SWITCH_NIC_SAVE_COMPLETE per completare l'operazione di salvataggio.
Per altre informazioni su come salvare i dati di runtime per una porta commutatore estendibile, vedere Salvataggio Hyper-V commutatore estendibile Run-Time dati.
Codici di stato restituiti
L'estensione del commutatore estendibile restituisce uno dei codici di stato seguenti per la richiesta del metodo OID di OID_SWITCH_NIC_SAVE.
Codice di stato | Descrizione |
---|---|
NDIS_STATUS_BUFFER_TOO_SHORT |
La lunghezza del buffer delle informazioni è troppo piccola per il NDIS_SWITCH_NIC_SAVE_STATE e i relativi dati di runtime associati L'estensione dell'opzione estendibile deve impostare il DATA. METHOD_INFORMATION. BytesNeeded membro nella struttura NDIS_OID_REQUEST alle dimensioni minime del buffer necessarie. |
NDIS_STATUS_SUCCESS |
L'estensione restituisce questo stato se restituisce dati di runtime da salvare. |
NDIS_STATUS_Xxx |
La richiesta non è riuscita per altri motivi. |
Il bordo miniport sottostante dell'opzione estendibile restituisce il codice di stato seguente per la richiesta del metodo OID di OID_SWITCH_NIC_SAVE.
Codice di stato | Descrizione |
---|---|
NDIS_STATUS_SUCCESS |
Richiesta OID completata. |
Fabbisogno
Versione |
Supportato in NDIS 6.30 e versioni successive. |
Intestazione |
Ntddndis.h (include Ndis.h) |