[2/2] kernel32: Implement GetNumaProcessorNode.
Sebastian Lackner
sebastian at fds-team.de
Sun Jun 28 23:27:34 CDT 2015
From: Michael Müller <michael at fds-team.de>
---
dlls/kernel32/kernel32.spec | 2 +-
dlls/kernel32/process.c | 21 +++++++++++++++++++++
dlls/kernel32/tests/process.c | 2 +-
include/winbase.h | 1 +
4 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index f9a0770..7703f2c 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -746,7 +746,7 @@
@ stdcall GetNumaNodeProcessorMask(long ptr)
# @ stub GetNumaNodeProcessorMaskEx
# @ stub GetNumaProcessorMap
-# @ stub GetNumaProcessorNode
+@ stdcall GetNumaProcessorNode(long ptr)
# @ stub GetNumaProcessorNodeEx
# @ stub GetNumaProximityNode
# @ stub GetNumaProximityNodeEx
diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
index 2c8074b..1cd6e47 100644
--- a/dlls/kernel32/process.c
+++ b/dlls/kernel32/process.c
@@ -3957,6 +3957,27 @@ BOOL WINAPI GetNumaAvailableMemoryNode(UCHAR node, PULONGLONG available_bytes)
return FALSE;
}
+/***********************************************************************
+ * GetNumaProcessorNode (KERNEL32.@)
+ */
+BOOL WINAPI GetNumaProcessorNode(UCHAR processor, PUCHAR node)
+{
+ SYSTEM_INFO si;
+
+ TRACE("(%d, %p)\n", processor, node);
+
+ GetSystemInfo( &si );
+ if (processor < si.dwNumberOfProcessors)
+ {
+ *node = 0;
+ return TRUE;
+ }
+
+ *node = 0xFF;
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+}
+
/**********************************************************************
* GetProcessDEPPolicy (KERNEL32.@)
*/
diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c
index b4a435b..4145dce 100644
--- a/dlls/kernel32/tests/process.c
+++ b/dlls/kernel32/tests/process.c
@@ -2704,7 +2704,7 @@ static void test_GetNumaProcessorNode(void)
if (!pGetNumaProcessorNode)
{
- skip("GetNumaProcessorNode is missing\n");
+ win_skip("GetNumaProcessorNode is missing\n");
return;
}
diff --git a/include/winbase.h b/include/winbase.h
index cc1081e..f3249a7 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -2052,6 +2052,7 @@ WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,LPDWORD,LPDWORD,LP
#define GetNamedPipeHandleState WINELIB_NAME_AW(GetNamedPipeHandleState)
WINBASEAPI BOOL WINAPI GetNamedPipeInfo(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
+WINBASEAPI BOOL WINAPI GetNumaProcessorNode(UCHAR,PUCHAR);
WINADVAPI BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD);
WINADVAPI BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD);
WINBASEAPI BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,LPDWORD,BOOL);
--
2.4.4
More information about the wine-patches
mailing list