Condividi tramite


OID_SWITCH_NIC_SAVE

Il bordo del protocollo del commutatore estendibile Hyper-V genera una richiesta di metodo OID (Object Identifier) di OID_SWITCH_NIC_SAVE durante un'operazione per salvare i dati di runtime per una porta di commutatore 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 il salvataggio dei dati di runtime, viene ripristinato 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.

Commenti

Quando riceve la richiesta del metodo OID di OID_SWITCH_NIC_SAVE, l'estensione commutatore 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 Byte SaveDataOffset dall'inizio della struttura.

  • Se SaveDataSize specificato non è abbastanza grande per contenere i dati di salvataggio necessari, l'estensione imposta il campo BytesNeeded della struttura del metodo 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à ristampato 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 del commutatore estendibile genera 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 commutatore estendibile. Per altre informazioni su questa procedura, vedere Filtro delle richieste OID in un driver di filtro NDIS.

Il commutatore estendibile Hyper-V popola i campi Header, PortId, NicIdex, SaveDataSize e SaveDataOffset 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 di metodo OID è stata ricevuta dal bordo miniport del commutatore estendibile, completa la richiesta OID con NDIS_STATUS_SUCCESS. In questo modo viene notificato il bordo del protocollo dell'commutatore estendibile che tutte le estensioni nello stack di driver commutatore estendibile sono state sottoposte a query per i dati in fase di esecuzione. Il bordo del protocollo dell'interruttore estendibile genera quindi una richiesta del 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 di commutatore estendibile, vedere Salvataggio di un commutatore estendibile Hyper-V Run-Time Dati.

Codici di stato restituiti

L'estensione del commutatore estendibile restituisce uno dei codici di stato seguenti per la richiesta di metodo OID di OID_SWITCH_NIC_SAVE.

Codice di stato Descrizione

NDIS_STATUS_BUFFER_TOO_SHORT

La lunghezza del buffer informativo è troppo piccola per la NDIS_SWITCH_NIC_SAVE_STATE e i relativi dati di runtime associati L'estensione dell'opzione estendibile deve impostare i DATI. METHOD_INFORMATION. Membro ByteNeeded nella struttura NDIS_OID_REQUEST alla dimensione minima del buffer necessaria.

NDIS_STATUS_SUCCESS

L'estensione restituisce questo stato se restituisce i dati di runtime per salvare.

NDIS_STATUS_Xxx

La richiesta non è riuscita per altri motivi.

Il bordo miniport sottostante dell'commutatore 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

La richiesta OID è stata completata correttamente.

Requisiti

Versione

Supportato in NDIS 6.30 e versioni successive.

Intestazione

Ntddndis.h (include Ndis.h)

Vedi anche


NDIS_OID_REQUEST

NDIS_SWITCH_NIC_SAVE_STATE

NdisFOidRequest

OID_SWITCH_NIC_RESTORE

OID_SWITCH_NIC_SAVE_COMPLETE