2.3.2.5 Interrupt Handling Functions

The NDIS library provides several interrupt handling functions, defined in the following table, for use in a multiprocessor environment. These functions relate to NIC interrupts on a host processor.

Function

Definition

NdisMDeregisterInterrupt

Stops an interrupt handler from receiving interrupts. The operating system disconnects the interrupt service function from its associated NIC interrupt.

NdisMRegisterInterrupt

Associates the miniport interrupt service function (MiniportISR) with interrupts generated by its network interface card.

NdisMSynchronizeWithInterrupt

Any NIC driver function that shares resources with the MiniportISR or MiniportDisableInterrupt functions must synchronize access to these resources to prevent race conditions. Functions that must synchronize with MiniportISR and MiniportDisableInterrupt do so by calling NdisMSynchronizeWithInterrupt passing the address of a MiniportSynchronizeISR function. The MiniportSynchronizeISR function runs at DIRQL so that it can safely access the shared resource.