[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: [PATCH 2/2] kernel32: Implement GetNumaHighestNodeNumber
From: Chris Moeller <kode54 () gmail ! com>
Date: 2013-07-29 23:30:19
Message-ID: 00EFC8F3-290D-4447-B2EC-FFCBF2E3B11B () gmail ! com
[Download RAW message or body]
["0002-kernel32-Implement-GetNumaHighestNodeNumber-using-corr.txt" (0002-kernel32-Implement-GetNumaHighestNodeNumber-using-corr.txt)]
From 750f684d6c836f287d7ddb427f12b28da844736a Mon Sep 17 00:00:00 2001
From: Chris Moeller <kode54@gmail.com>
Date: Mon, 29 Jul 2013 16:20:14 -0700
Subject: kernel32: Implement GetNumaHighestNodeNumber using correct
NtQuerySystemInformation API
---
dlls/kernel32/process.c | 25 ++++++++++++++++++++++---
1 file changed, 22 insertions(+), 3 deletions(-)
diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
index 6ce43d8..691b3d8 100644
--- a/dlls/kernel32/process.c
+++ b/dlls/kernel32/process.c
@@ -3849,9 +3849,28 @@ HRESULT WINAPI RegisterApplicationRecoveryCallback(APPLICATION_RECOVERY_CALLBACK
*/
BOOL WINAPI GetNumaHighestNodeNumber(PULONG highestnode)
{
- FIXME("(%p): stub\n", highestnode);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ ULONG NtHighestNode, ReturnLength;
+ NTSTATUS status;
+
+ TRACE("(%p)\n", highestnode);
+
+ status = NtQuerySystemInformation(SystemNumaHighestNodeNumber,
+ &NtHighestNode, sizeof(NtHighestNode),
+ &ReturnLength);
+
+ if (status != STATUS_SUCCESS)
+ {
+ SetLastError(RtlNtStatusToDosError(status));
+ return FALSE;
+ }
+ else if (ReturnLength < sizeof(NtHighestNode))
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+ }
+
+ *highestnode = NtHighestNode;
+ return TRUE;
}
/**********************************************************************
--
1.7.10.2 (Apple Git-33)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic