WdmlibIoGetAffinityInterrupt function (iointex.h)
The WdmlibIoGetAffinityInterrupt function gets the group affinity of an interrupt object.
Syntax
NTSTATUS WdmlibIoGetAffinityInterrupt(
[in] PKINTERRUPT InterruptObject,
[out] PGROUP_AFFINITY GroupAffinity
);
Parameters
[in] InterruptObject
A pointer to an interrupt object. This parameter points to a KINTERRUPT structure that represents a registration by a driver to receive device interrupts. The structure is opaque. The caller obtained this pointer value in a previous call to the WdmlibIoConnectInterruptEx or IoConnectInterrupt routine.
[out] GroupAffinity
A pointer to a caller-allocated buffer into which the routine writes a GROUP_AFFINITY structure that specifies the group affinity of the interrupt object that InterruptObject points to. This buffer must be large enough to contain the structure.
Return value
WdmlibIoGetAffinityInterrupt returns STATUS_SUCCESS if the call is successful. Possible error return values include the following:
Return code | Description |
---|---|
|
The InterruptObject parameter does not point to a valid interrupt object. |
Remarks
A kernel-mode driver calls this routine to get the set of logical processors on which the driver's registered interrupt service routine (ISR) can receive device interrupts. This set of processors is described by a GROUP_AFFINITY structure, which specifies a group number and an affinity mask. All the processors that are assigned to a particular ISR registration must belong to the same group.
The driver registered the ISR in a previous call to the WdmlibIoConnectInterruptEx or IoConnectInterrupt routine.
In Windows 7, WdmlibIoConnectInterruptEx and IoConnectInterrupt assign device interrupts only to logical processors in group 0. This is by default. A driver can specify a different interrupt affinity for its device in an INF file or in its response to an IRP_MN_FILTER_RESOURCE_REQUIREMENTS request. For more information about how to change the interrupt affinity, see the Supporting Systems That Have More Than 64 Processors white paper on the WHDC website.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Windows 7 and later versions of Windows. |
Target Platform | Windows |
Header | iointex.h (include Iointex.h, Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Any level |