Freigeben über


NdisMConfigMSIXTableEntry-Funktion (ndis.h)

Die NdisMConfigMSIXTableEntry-Funktion führt Konfigurationsvorgänge für MSI-X-Tabelleneinträge für geräteseitig zugewiesene MSI-X-Nachrichten aus.

Syntax

NDIS_STATUS NdisMConfigMSIXTableEntry(
  [in] NDIS_HANDLE                  NdisMiniportHandle,
  [in] PNDIS_MSIX_CONFIG_PARAMETERS MSIXConfigParameters
);

Parameter

[in] NdisMiniportHandle

Ein NDIS-Miniportadapterhandle, das von NDIS an den MiniportInitializeEx-Funktion .

[in] MSIXConfigParameters

Ein Zeiger auf einen aufruferseitig zugewiesenen NDIS_MSIX_CONFIG_PARAMETERS Struktur, die den angeforderten Konfigurationsvorgang definiert und die Parameter angibt, die für diesen bestimmten Vorgang erforderlich sind.

Rückgabewert

NdisMConfigMSIXTableEntry gibt einen entsprechenden Fehlercode vom zugrunde liegenden PCI-Bustreiber oder einen der folgenden status Werte zurück:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS
Der MSI-X-Tabelleneintrag wurde erfolgreich neu konfiguriert.
NDIS_STATUS_INVALID_PARAMETER
Fehler bei NdisMConfigMSIXTableEntry , weil mindestens ein Member im NDIS_MSIX_CONFIG_PARAMETERS Struktur war ungültig.

Hinweise

NDIS-Miniporttreiber, die MSI-X unterstützen, rufen die NdisMConfigMSIXTableEntry-Funktion auf, um MSI-X-Tabelleneinträge zu geräteseitig zugewiesenen MSI-X-Nachrichten zu maskieren, zu entlarken oder zuzuordnen. Miniporttreiber, die RSS unterstützen, verwenden NdisMConfigMSIXTableEntry , um die CPU-Affinität von MSI-X-Tabelleneinträgen zur Laufzeit zu ändern.

NdisMConfigMSIXTableEntry ist ein Wrapper um die GUID_MSIX_TABLE_CONFIG_INTERFACE Abfrage. Miniport-Treiber können NdisMConfigMSIXTableEntry aufrufen, nachdem NDIS die MiniportInitializeEx-Funktion aufgerufen hat und bevor der Treiber von der MiniportHaltEx-Funktion zurückkehrt.

Der Miniporttreiber kann die CPU-Affinität von MSI-X-Interruptressourcen so festlegen, dass das Gerät mindestens eine MSI-X-Nachricht für jeden RSS-Prozessor aufweist. Beachten Sie, dass der PCI-Bustreiber die n MSI-X-Tabelleneinträge (wobei n die Anzahl der MSI-X-Tabelleneinträge, die die NIC an den Bus gemeldet hatte) zunächst den ersten n MSI-X-Nachrichten in geänderten Ressourcen zuordnet. Nachdem NDIS MiniportInitializeEx aufgerufen hat, ruft der Treiber NdisMConfigMSIXTableEntry auf, wenn der Miniporttreiber den Zielprozessor eines bestimmten MSI-X-Tabelleneintrags ändert, um diesen Tabelleneintrag einer MSI-X-Nachricht zuzuordnen, in der bereits die Affinität zum gewünschten Prozessor festgelegt ist.

Für den Vorgang NdisMSIXTableConfigSetTableEntry müssen Aufrufer von NdisMConfigMSIXTableEntry unter IRQL <= DISPATCH_LEVEL ausgeführt werden.

Für die Vorgänge NdisMSIXTableConfigMaskTableEntry oder NdisMSIXTableConfigUnmaskTableEntry können Aufrufer von NdisMConfigMSIXTableEntry auf jedem IRQL ausgeführt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 6.1 und höher.
Zielplattform Universell
Header ndis.h (einschließlich Ndis.h)
Bibliothek Ndis.lib
IRQL Siehe Abschnitt "Hinweise"

Weitere Informationen

MiniportHaltEx

MiniportInitializeEx

NDIS_MSIX_CONFIG_PARAMETERS