Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

KeIpiGenericCall function (wdm.h)

The KeIpiGenericCall routine causes the specified routine to run on all processors simultaneously.

Syntax

ULONG_PTR KeIpiGenericCall(
 [in] PKIPI_BROADCAST_WORKER BroadcastFunction,
 [in] ULONG_PTR Context
);

Parameters

[in] BroadcastFunction

Pointer to an IpiGenericCall routine. This routine is run on every processor simultaneously.

[in] Context

Specifies the value to pass to IpiGenericCall when it is called.

Return value

KeIpiGenericCall returns the value that IpiGenericCall returns on the source processor (the processor that called KeIpiGenericCall).

Remarks

When a driver calls KeIpiGenericCall, the system interrupts every processor and raises the IRQL to IPI_LEVEL (interprocessor interrupt level). Each processor spins on a barrier until all processors have reached the barrier; then, all processors begin calling IpiGenericCall. KeIpiGenericCall waits for all calls to IpiGenericCall to complete before returning.

Requirements

Requirement Value
Minimum supported client Available in Windows Server 2003 and later versions of Windows.
Target Platform Universal
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < IPI_LEVEL

See also

IpiGenericCall


Feedback

Was this page helpful?

Additional resources