Add some DPC related stubs
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s

This commit is contained in:
Rafal Kupiec 2023-11-16 14:53:54 +01:00
parent ec4a0fcb70
commit 1a932468a2
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4
3 changed files with 64 additions and 17 deletions

View File

@ -74,4 +74,12 @@ VOID
KeSetTargetProcessorDpc(IN PKDPC Dpc,
IN CCHAR Number);
XTAPI
VOID
KeSignalCallDpcDone(IN PVOID SystemArgument);
XTAPI
BOOLEAN
KeSignalCallDpcSynchronize(IN PVOID SystemArgument);
#endif /* __XTDK_KEFUNCS_H */

View File

@ -75,23 +75,6 @@ KeInitializeThreadedDpc(IN PKDPC Dpc,
Dpc->DpcData = NULL;
}
/**
* Retires the expired DPC objects found in the DPC list.
*
* @param Prcb
* Supplies apointer to the Prcessor Control Block (PRCB).
*
* @return This routine does not return any value.
*
* @since XT 1.0
*/
XTFASTCALL
VOID
KepRetireDpcList(IN PKPROCESSOR_CONTROL_BLOCK Prcb)
{
UNIMPLEMENTED;
}
/**
* Sets the target processor number for DPC.
*
@ -112,3 +95,57 @@ KeSetTargetProcessorDpc(IN PKDPC Dpc,
{
Dpc->Number = MAXIMUM_PROCESSORS + Number;
}
/**
* Decrements the DPC call barier.
*
* @param SystemArgument
* Supplies an address of the DPC call barrier.
*
* @return This routine does not return any value.
*
* @since NT 5.2
*/
XTAPI
VOID
KeSignalCallDpcDone(IN PVOID SystemArgument)
{
RtlAtomicDecrement32(SystemArgument);
}
/**
* Decrements the DPC call reverse barier.
*
* @param SystemArgument
* Supplies an address of the DPC call barrier.
*
* @return This routine returns TRUE if just one processor is waiting on the barrier, FALSE if more.
*
* @since NT 5.2
*/
XTAPI
BOOLEAN
KeSignalCallDpcSynchronize(IN PVOID SystemArgument)
{
UNIMPLEMENTED;
/* SMP not yet implemented, return TRUE */
return TRUE;
}
/**
* Retires the expired DPC objects found in the DPC list.
*
* @param Prcb
* Supplies apointer to the Prcessor Control Block (PRCB).
*
* @return This routine does not return any value.
*
* @since XT 1.0
*/
XTFASTCALL
VOID
KepRetireDpcList(IN PKPROCESSOR_CONTROL_BLOCK Prcb)
{
UNIMPLEMENTED;
}

View File

@ -21,6 +21,8 @@
@ stdcall KeReadSemaphoreState(ptr)
@ stdcall KeReleaseSemaphore(ptr long long long)
@ stdcall KeSetTargetProcessorDpc(ptr long)
@ stdcall KeSignalCallDpcDone(ptr)
@ stdcall KeSignalCallDpcSynchronize(ptr)
@ stdcall RtlCompareMemory(ptr ptr long)
@ stdcall RtlCopyMemory(ptr ptr long)
@ stdcall RtlFillMemory(ptr long long)