[NDK][NTOS]
authorThomas Faber <thomas.faber@reactos.org>
Sat, 29 Aug 2015 15:04:01 +0000 (15:04 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Sat, 29 Aug 2015 15:04:01 +0000 (15:04 +0000)
- Move KeProfileInterrupt[WithSource] declarations to NDK since they're exported
- NtCreateProfile's fourth parameter is SIZE_T
- Add NtCreateProfileEx prototype
CORE-10066

svn path=/trunk/; revision=68861

reactos/include/ndk/kefuncs.h
reactos/ntoskrnl/ex/profile.c
reactos/ntoskrnl/include/internal/ke.h

index 638e122..a1e379f 100644 (file)
@@ -285,6 +285,19 @@ KeSetGdtSelector(
     _In_ ULONG Value2
 );
 
+VOID
+NTAPI
+KeProfileInterrupt(
+    _In_ PKTRAP_FRAME TrapFrame
+);
+
+VOID
+NTAPI
+KeProfileInterruptWithSource(
+    _In_ PKTRAP_FRAME TrapFrame,
+    _In_ KPROFILE_SOURCE Source
+);
+
 VOID
 NTAPI
 KeSetProfileIrql(
@@ -353,7 +366,7 @@ NtCreateProfile(
     _Out_ PHANDLE ProfileHandle,
     _In_ HANDLE ProcessHandle,
     _In_ PVOID ImageBase,
-    _In_ ULONG ImageSize,
+    _In_ SIZE_T ImageSize,
     _In_ ULONG Granularity,
     _Out_ PVOID Buffer,
     _In_ ULONG ProfilingSize,
@@ -361,6 +374,22 @@ NtCreateProfile(
     _In_ KAFFINITY ProcessorMask
 );
 
+NTSYSCALLAPI
+NTSTATUS
+NTAPI
+NtCreateProfileEx(
+    _Out_ PHANDLE ProfileHandle,
+    _In_ HANDLE ProcessHandle,
+    _In_ PVOID ImageBase,
+    _In_ SIZE_T ImageSize,
+    _In_ ULONG Granularity,
+    _Out_ PVOID Buffer,
+    _In_ ULONG ProfilingSize,
+    _In_ KPROFILE_SOURCE Source,
+    _In_ USHORT GroupCount,
+    _In_reads_(GroupCount) PGROUP_AFFINITY Affinity
+);
+
 NTSYSCALLAPI
 NTSTATUS
 NTAPI
index 1784bd4..ee21fba 100644 (file)
@@ -95,7 +95,7 @@ NTAPI
 NtCreateProfile(OUT PHANDLE ProfileHandle,
                 IN HANDLE Process OPTIONAL,
                 IN PVOID RangeBase,
-                IN ULONG RangeSize,
+                IN SIZE_T RangeSize,
                 IN ULONG BucketSize,
                 IN PVOID Buffer,
                 IN ULONG BufferSize,
index 6d4590a..879b5e1 100644 (file)
@@ -403,19 +403,6 @@ KeSetIntervalProfile(
     KPROFILE_SOURCE ProfileSource
 );
 
-VOID
-NTAPI
-KeProfileInterrupt(
-    PKTRAP_FRAME TrapFrame
-);
-
-VOID
-NTAPI
-KeProfileInterruptWithSource(
-    IN PKTRAP_FRAME TrapFrame,
-    IN KPROFILE_SOURCE Source
-);
-
 VOID
 NTAPI
 KeUpdateRunTime(