Condividi tramite


OID_SWITCH_NIC_RESTORE

Il bordo del protocollo del commutatore estendibile Hyper-V emette una richiesta di set OID (Object Identifier) di OID_SWITCH_NIC_RESTORE per notificare all'estensione del commutatore estendibile i dati di runtime che possono essere ripristinati per una porta commutatore estendibile e la relativa connessione alla scheda di rete.

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 set OID di OID_SWITCH_NIC_RESTORE, l'estensione dell'opzione estendibile deve prima determinare se possiede i dati di runtime. L'estensione esegue questa operazione confrontando il valore del ExtensionId membro della struttura NDIS_SWITCH_NIC_SAVE_STATE con il valore GUID usato dall'estensione per identificarsi.

Se l'estensione è proprietaria dei dati di runtime per una porta switch estendibile, i dati vengono ripristinati nel modo seguente:

  1. L'estensione copia i dati di runtime nel membro SaveData nell'archiviazione allocata dall'estensione.

    Nota Il valore del membro PortId della struttura di NDIS_SWITCH_NIC_SAVE_STATE può essere diverso dal valore portId al momento del salvataggio dei dati in fase di esecuzione. Ciò può verificarsi se i dati in fase di esecuzione sono stati salvati durante una migrazione in tempo reale da un host a un altro. Tuttavia, la configurazione della porta del commutatore estendibile viene mantenuta durante la migrazione in tempo reale. In questo modo, l'estensione consente di ripristinare i dati di runtime sulla porta del commutatore estendibile usando il nuovo valore portId .

  2. L'estensione completa la richiesta di set OID con NDIS_STATUS_SUCCESS.

Se l'estensione non è proprietaria dei dati di runtime specificati, l'estensione chiama NdisFOidRequest per inoltrare questa richiesta di set di OID alle estensioni sottostanti nello stack di driver del commutatore estendibile. In questo caso, l'estensione non deve modificare la struttura NDIS_SWITCH_NIC_SAVE_STATE associata alla richiesta OID.

Se la richiesta impostata di OID_SWITCH_NIC_RESTORE viene ricevuta dal bordo miniport del commutatore estendibile, completa la richiesta OID con NDIS_STATUS_SUCCESS. In questo modo viene informato il bordo del protocollo del commutatore estendibile che nessuna estensione è proprietaria dei dati di runtime.

Per altre informazioni su come ripristinare i dati di runtime, vedere Restore Hyper-V Extensible Switch Run-Time Data.

Nota Se l'estensione non riesce la richiesta del set OID, l'opzione estendibile avrà esito negativo per l'intera operazione di ripristino. Di conseguenza, l'estensione deve evitare l'esito negativo della richiesta OID, se possibile. Ad esempio, se l'estensione non può allocare la risorsa necessaria per ripristinare i dati di runtime, la richiesta OID non riesce se non riesce a funzionare correttamente senza ripristinare i dati di runtime. Tuttavia, se l'estensione può essere ripristinata dalla condizione di errore, non deve avere esito negativo la richiesta del set OID.

Codici di stato restituiti

Se l'estensione completa la richiesta di set OID di OID_SWITCH_NIC_RESTORE, restituisce uno dei codici di stato seguenti.

Codice di stato Descrizione

NDIS_STATUS_SUCCESS

Richiesta OID completata.

NDIS_STATUS_Xxx

La richiesta non è riuscita per altri motivi.

Fabbisogno

Versione

Supportato in NDIS 6.30 e versioni successive.

Intestazione

Ntddndis.h (include Ndis.h)

Vedere anche


NDIS_OID_REQUEST

NDIS_SWITCH_NIC_SAVE_STATE

NdisFOidRequest