IRQ_DEVICE_POLICY enumeration (wdm.h)

The IRQ_DEVICE_POLICY enumeration type indicates the policy the operating system can use to assign the interrupts from a device to different processors.

Syntax

typedef enum _IRQ_DEVICE_POLICY {
  IrqPolicyMachineDefault = 0,
  IrqPolicyAllCloseProcessors = 1,
  IrqPolicyOneCloseProcessor = 2,
  IrqPolicyAllProcessorsInMachine = 3,
  IrqPolicySpecifiedProcessors = 4,
  IrqPolicySpreadMessagesAcrossAllProcessors = 5,
  IrqPolicyAllProcessorsInMachineWhenSteered = 6
} IRQ_DEVICE_POLICY, *PIRQ_DEVICE_POLICY;

Constants

 
IrqPolicyMachineDefault
Value: 0
The device does not require any particular assignment of interrupts to processors.
IrqPolicyAllCloseProcessors
Value: 1
The operating system should assign interrupts from the device to processors that are close to the device. On non-NUMA computers, the effect of this value is identical to that of IrqPolicyAllProcessorsInMachine.
IrqPolicyOneCloseProcessor
Value: 2
The operating system should assign a single interrupt for the device to one processor that is close to the device. On non-NUMA computers, the operating system can assign the interrupt to any processor.
IrqPolicyAllProcessorsInMachine
Value: 3
The operating system should assign interrupts from the device to all processors.
IrqPolicySpecifiedProcessors
Value: 4
The operating system should assign interrupts from the device to a specific set of processors.
IrqPolicySpreadMessagesAcrossAllProcessors
Value: 5
The operating system should assign different message-signaled interrupts to different processors, if possible.
IrqPolicyAllProcessorsInMachineWhenSteered
Value: 6
Reserved for system use. Do not use in your driver.

Remarks

The Interrupt.AffinityPolicy member of the IO_RESOURCE_DESCRIPTOR structure is an IRQ_DEVICE_POLICY enumeration value.

Requirements

Requirement Value
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h)

See also