[NTOS:PS]

- Return sensible values for KernelTime/UserTime from NtQueryInformationProcess:ProcessTimes
CORE-7007 #resolve

svn path=/trunk/; revision=71153
This commit is contained in:
Thomas Faber 2016-04-12 17:44:47 +00:00
parent 8bed306ee8
commit d58a87beca
2 changed files with 5 additions and 6 deletions

View file

@ -70,6 +70,7 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
PPROCESS_BASIC_INFORMATION ProcessBasicInfo =
(PPROCESS_BASIC_INFORMATION)ProcessInformation;
PKERNEL_USER_TIMES ProcessTime = (PKERNEL_USER_TIMES)ProcessInformation;
ULONG UserTime, KernelTime;
PPROCESS_PRIORITY_CLASS PsPriorityClass = (PPROCESS_PRIORITY_CLASS)ProcessInformation;
ULONG HandleCount;
PPROCESS_SESSION_INFORMATION SessionInfo =
@ -296,12 +297,10 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
_SEH2_TRY
{
/* Copy time information from EPROCESS/KPROCESS */
/* FIXME: Call KeQueryRuntimeProcess */
KernelTime = KeQueryRuntimeProcess(&Process->Pcb, &UserTime);
ProcessTime->CreateTime = Process->CreateTime;
ProcessTime->UserTime.QuadPart = Process->Pcb.UserTime *
KeMaximumIncrement;
ProcessTime->KernelTime.QuadPart = Process->Pcb.KernelTime *
KeMaximumIncrement;
ProcessTime->UserTime.QuadPart = (LONGLONG)UserTime * KeMaximumIncrement;
ProcessTime->KernelTime.QuadPart = (LONGLONG)KernelTime * KeMaximumIncrement;
ProcessTime->ExitTime = Process->ExitTime;
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)

View file

@ -1,6 +1,6 @@
/*
* PROJECT: ReactOS API tests
* LICENSE: LGPLv2.1+ - See COPYING in the top level directory
* LICENSE: LGPLv2.1+ - See COPYING.LIB in the top level directory
* PURPOSE: Tests for the NtQueryInformationProcess API
* PROGRAMMER: Thomas Faber <thomas.faber@reactos.org>
*/