INFO: NdisMRegisterInterrupt Fails on Multiprocs (214454)



The information in this article applies to:

  • Microsoft Win32 Device Driver Kit (DDK) for Windows NT 4.0

This article was previously published under Q214454

SUMMARY

NdisMRegisterInterrupt fails on a Multiproc system, but runs on a UniProc system. Typically, this behavior is seen on systems with ISA network cards.

MORE INFORMATION

NdisMRegisterInterrupt calls into the IO manager, and then the HAL to handle the interrupt registration. One of the parameters used in this registration is the Interface type. The Interface type is necessary for the HAL to identify on which bus the interrupt is located.

The Interface type used in NdisMRegisterInterrupt is determined by the AdapterType parameter in the NdisMSetAttributes(Ex) call. For ISA cards, this parameter must be set to NdisInterfaceIsa (1).

Failing to call NdisMSetAttributes, or setting the interface type to a value of zero (0), allows the driver to work on some Uniproc systems, when the Internal bus type is ISA, but to fail on Multiproc systems, and on some non-ISA Uniproc systems.

Modification Type:MinorLast Reviewed:7/27/2004
Keywords:kb3rdparty kbinfo kbKMode kbNDIS KB214454