[SDK:KMDF] Fix calling convention for the kernel function pointers

This commit is contained in:
Victor Perevertkin 2021-03-10 18:41:03 +03:00
parent 98203cea23
commit 6d1ca3553e
No known key found for this signature in database
GPG key ID: C750B7222E9C7830
3 changed files with 41 additions and 35 deletions

View file

@ -27,3 +27,9 @@ Revision History:
#else
#define CHECK_RETURN_IF_USER_MODE
#endif
#ifdef __REACTOS__
# ifndef STDCALL
# define STDCALL __stdcall
# endif
#endif

View file

@ -26,7 +26,7 @@ Revision History:
typedef
BOOLEAN
(*PFN_KE_SET_COALESCABLE_TIMER) (
(STDCALL *PFN_KE_SET_COALESCABLE_TIMER) (
__inout PKTIMER Timer,
__in LARGE_INTEGER DueTime,
__in ULONG Period,

View file

@ -57,18 +57,18 @@ struct FxAllocatedMdls {
typedef
BOOLEAN
(*PFN_KD_REFRESH)(
(STDCALL *PFN_KD_REFRESH)(
);
typedef
VOID
(*PFN_KE_FLUSH_QUEUED_DPCS)(
(STDCALL *PFN_KE_FLUSH_QUEUED_DPCS)(
VOID
);
typedef
NTSTATUS
(*PFN_IO_SET_COMPLETION_ROUTINE_EX)(
(STDCALL *PFN_IO_SET_COMPLETION_ROUTINE_EX)(
__in PDEVICE_OBJECT DeviceObject,
__in PIRP Irp,
__in PIO_COMPLETION_ROUTINE CompletionRoutine,
@ -80,7 +80,7 @@ NTSTATUS
typedef
BOOLEAN
(*PFN_KE_REGISTER_BUGCHECK_REASON_CALLBACK) (
(STDCALL *PFN_KE_REGISTER_BUGCHECK_REASON_CALLBACK) (
__in PKBUGCHECK_REASON_CALLBACK_RECORD CallbackRecord,
__in PKBUGCHECK_REASON_CALLBACK_ROUTINE CallbackRoutine,
__in KBUGCHECK_CALLBACK_REASON Reason,
@ -89,25 +89,25 @@ BOOLEAN
typedef
BOOLEAN
(*PFN_KE_DEREGISTER_BUGCHECK_REASON_CALLBACK) (
(STDCALL *PFN_KE_DEREGISTER_BUGCHECK_REASON_CALLBACK) (
__in PKBUGCHECK_REASON_CALLBACK_RECORD CallbackRecords
);
typedef
NTSTATUS
(*PFN_IO_CONNECT_INTERRUPT_EX)(
(STDCALL *PFN_IO_CONNECT_INTERRUPT_EX)(
__inout PIO_CONNECT_INTERRUPT_PARAMETERS Parameters
);
typedef
NTSTATUS
(*PFN_IO_DISCONNECT_INTERRUPT_EX)(
(STDCALL *PFN_IO_DISCONNECT_INTERRUPT_EX)(
__in PIO_DISCONNECT_INTERRUPT_PARAMETERS Parameters
);
typedef
NTSTATUS
(*PFN_IO_CONNECT_INTERRUPT)(
(STDCALL *PFN_IO_CONNECT_INTERRUPT)(
__out PKINTERRUPT *InterruptObject,
__in PKSERVICE_ROUTINE ServiceRoutine,
__in_opt PVOID ServiceContext,
@ -123,7 +123,7 @@ NTSTATUS
typedef
VOID
(*PFN_IO_DISCONNECT_INTERRUPT)(
(STDCALL *PFN_IO_DISCONNECT_INTERRUPT)(
__in PKINTERRUPT InterruptObject
);
@ -154,32 +154,32 @@ PSLIST_ENTRY
typedef
BOOLEAN
(*PFN_PO_GET_SYSTEM_WAKE)(
(STDCALL *PFN_PO_GET_SYSTEM_WAKE)(
__in PIRP Irp
);
typedef
VOID
(*PFN_PO_SET_SYSTEM_WAKE)(
(STDCALL *PFN_PO_SET_SYSTEM_WAKE)(
__inout PIRP Irp
);
typedef
KAFFINITY
(*PFN_KE_QUERY_ACTIVE_PROCESSORS)(
(STDCALL *PFN_KE_QUERY_ACTIVE_PROCESSORS)(
VOID
);
typedef
VOID
(*PFN_KE_SET_TARGET_PROCESSOR_DPC)(
(STDCALL *PFN_KE_SET_TARGET_PROCESSOR_DPC)(
__in PRKDPC Dpc,
__in CCHAR Number
);
typedef
BOOLEAN
(*PFN_KE_SET_COALESCABLE_TIMER)(
(STDCALL *PFN_KE_SET_COALESCABLE_TIMER)(
__inout PKTIMER Timer,
__in LARGE_INTEGER DueTime,
__in ULONG Period,
@ -189,49 +189,49 @@ BOOLEAN
typedef
ULONG
(*PFN_KE_GET_CURRENT_PROCESSOR_NUMBER)(
(STDCALL *PFN_KE_GET_CURRENT_PROCESSOR_NUMBER)(
VOID
);
typedef
ULONG
(*PFN_KE_GET_CURRENT_PROCESSOR_NUMBER_EX)(
(STDCALL *PFN_KE_GET_CURRENT_PROCESSOR_NUMBER_EX)(
__out_opt PPROCESSOR_NUMBER ProcNumber
);
typedef
ULONG
(*PFN_KE_QUERY_MAXIMUM_PROCESSOR_COUNT_EX)(
(STDCALL *PFN_KE_QUERY_MAXIMUM_PROCESSOR_COUNT_EX)(
__in USHORT GroupNumber
);
typedef
ULONG
(*PFN_KE_QUERY_MAXIMUM_PROCESSOR_COUNT)(
(STDCALL *PFN_KE_QUERY_MAXIMUM_PROCESSOR_COUNT)(
VOID
);
typedef
BOOLEAN
(*PFN_KE_ARE_APCS_DISABLED)(
(STDCALL *PFN_KE_ARE_APCS_DISABLED)(
VOID
);
typedef
ULONG
(*PFN_KE_GET_RECOMMENDED_SHARED_DATA_ALIGNMENT)(
(STDCALL *PFN_KE_GET_RECOMMENDED_SHARED_DATA_ALIGNMENT)(
VOID
);
typedef
NTSTATUS
(*PFN_IO_UNREGISTER_PLUGPLAY_NOTIFICATION_EX)(
(STDCALL *PFN_IO_UNREGISTER_PLUGPLAY_NOTIFICATION_EX)(
__in PVOID NotificationEntry
);
typedef
NTSTATUS
(*PFN_POX_REGISTER_DEVICE) (
(STDCALL *PFN_POX_REGISTER_DEVICE) (
__in MdDeviceObject Pdo,
__in PPO_FX_DEVICE PoxDevice,
__out POHANDLE * Handle
@ -239,19 +239,19 @@ NTSTATUS
typedef
VOID
(*PFN_POX_START_DEVICE_POWER_MANAGEMENT) (
(STDCALL *PFN_POX_START_DEVICE_POWER_MANAGEMENT) (
__in POHANDLE Handle
);
typedef
VOID
(*PFN_POX_UNREGISTER_DEVICE) (
(STDCALL *PFN_POX_UNREGISTER_DEVICE) (
__in POHANDLE Handle
);
typedef
VOID
(*PFN_POX_ACTIVATE_COMPONENT) (
(STDCALL *PFN_POX_ACTIVATE_COMPONENT) (
__in POHANDLE Handle,
__in ULONG Component,
__in ULONG Flags
@ -259,7 +259,7 @@ VOID
typedef
VOID
(*PFN_POX_IDLE_COMPONENT) (
(STDCALL *PFN_POX_IDLE_COMPONENT) (
__in POHANDLE Handle,
__in ULONG Component,
__in ULONG Flags
@ -267,52 +267,52 @@ VOID
typedef
VOID
(*PFN_POX_REPORT_DEVICE_POWERED_ON) (
(STDCALL *PFN_POX_REPORT_DEVICE_POWERED_ON) (
__in POHANDLE Handle
);
typedef
VOID
(*PFN_POX_COMPLETE_IDLE_STATE) (
(STDCALL *PFN_POX_COMPLETE_IDLE_STATE) (
__in POHANDLE Handle,
__in ULONG Component
);
typedef
VOID
(*PFN_POX_COMPLETE_IDLE_CONDITION) (
(STDCALL *PFN_POX_COMPLETE_IDLE_CONDITION) (
__in POHANDLE Handle,
__in ULONG Component
);
typedef
VOID
(*PFN_POX_COMPLETE_DEVICE_POWER_NOT_REQUIRED) (
(STDCALL *PFN_POX_COMPLETE_DEVICE_POWER_NOT_REQUIRED) (
__in POHANDLE Handle
);
typedef
VOID
(*PFN_POX_SET_DEVICE_IDLE_TIMEOUT) (
(STDCALL *PFN_POX_SET_DEVICE_IDLE_TIMEOUT) (
__in POHANDLE Handle,
__in ULONGLONG IdleTimeout
);
typedef
VOID
(*PFN_IO_REPORT_INTERRUPT_ACTIVE) (
(STDCALL *PFN_IO_REPORT_INTERRUPT_ACTIVE) (
_In_ PIO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS Parameters
);
typedef
VOID
(*PFN_IO_REPORT_INTERRUPT_INACTIVE) (
(STDCALL *PFN_IO_REPORT_INTERRUPT_INACTIVE) (
_In_ PIO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS Parameters
);
typedef
VOID
(*PFN_VF_CHECK_NX_POOL_TYPE) (
(STDCALL *PFN_VF_CHECK_NX_POOL_TYPE) (
_In_ POOL_TYPE PoolType,
_In_ PVOID CallingAddress,
_In_ ULONG PoolTag