Module: wine Branch: master Commit: 52065a31d70dd9610388a094c70a6c9e34083ad9 URL: https://source.winehq.org/git/wine.git/?a=commit;h=52065a31d70dd9610388a094c...
Author: Roman Stingler roman.stingler@gmail.com Date: Wed May 8 22:34:08 2019 +0200
kernel32: Added some Numa stubs.
Signed-off-by: Roman Stingler roman.stingler@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
.../api-ms-win-core-kernel32-legacy-l1-1-1.spec | 4 +-- dlls/kernel32/kernel32.spec | 8 ++--- dlls/kernel32/process.c | 37 ++++++++++++++++++++++ dlls/kernelbase/kernelbase.spec | 3 +- include/winbase.h | 8 +++++ 5 files changed, 53 insertions(+), 7 deletions(-)
diff --git a/dlls/api-ms-win-core-kernel32-legacy-l1-1-1/api-ms-win-core-kernel32-legacy-l1-1-1.spec b/dlls/api-ms-win-core-kernel32-legacy-l1-1-1/api-ms-win-core-kernel32-legacy-l1-1-1.spec index 5531d2d..946e3de 100644 --- a/dlls/api-ms-win-core-kernel32-legacy-l1-1-1/api-ms-win-core-kernel32-legacy-l1-1-1.spec +++ b/dlls/api-ms-win-core-kernel32-legacy-l1-1-1/api-ms-win-core-kernel32-legacy-l1-1-1.spec @@ -29,9 +29,9 @@ @ stub GetMaximumProcessorGroupCount @ stdcall GetNamedPipeClientProcessId(long ptr) kernel32.GetNamedPipeClientProcessId @ stdcall GetNamedPipeServerProcessId(long ptr) kernel32.GetNamedPipeServerProcessId -@ stub GetNumaAvailableMemoryNodeEx +@ stdcall GetNumaAvailableMemoryNodeEx(long ptr) @ stdcall GetNumaNodeProcessorMask(long ptr) kernel32.GetNumaNodeProcessorMask -@ stub GetNumaProcessorNodeEx +@ stdcall GetNumaProcessorNodeEx(ptr ptr) @ stdcall GetShortPathNameA(str ptr long) kernel32.GetShortPathNameA @ stdcall GetStartupInfoA(ptr) kernel32.GetStartupInfoA @ stdcall GetStringTypeExA(long long str long ptr) kernel32.GetStringTypeExA diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec index 2e2828e..8346575 100644 --- a/dlls/kernel32/kernel32.spec +++ b/dlls/kernel32/kernel32.spec @@ -742,16 +742,16 @@ # @ stub GetNLSVersionEx # @ stub GetNumaAvailableMemory @ stdcall GetNumaAvailableMemoryNode(long ptr) -# @ stub GetNumaAvailableMemoryNodeEx +@ stdcall GetNumaAvailableMemoryNodeEx(long ptr) @ stdcall GetNumaHighestNodeNumber(ptr) # @ stub GetNumaNodeNumberFromHandle @ stdcall GetNumaNodeProcessorMask(long ptr) @ stdcall GetNumaNodeProcessorMaskEx(long ptr) # @ stub GetNumaProcessorMap @ stdcall GetNumaProcessorNode(long ptr) -# @ stub GetNumaProcessorNodeEx -# @ stub GetNumaProximityNode -# @ stub GetNumaProximityNodeEx +@ stdcall GetNumaProcessorNodeEx(ptr ptr) +@ stdcall GetNumaProximityNode(long ptr) +@ stdcall GetNumaProximityNodeEx(long ptr) @ stdcall GetNumberFormatA(long long str ptr ptr long) @ stdcall GetNumberFormatEx(wstr long wstr ptr ptr long) @ stdcall GetNumberFormatW(long long wstr ptr ptr long) diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c index 200ea8b..ccb743b 100644 --- a/dlls/kernel32/process.c +++ b/dlls/kernel32/process.c @@ -4459,6 +4459,16 @@ BOOL WINAPI GetNumaAvailableMemoryNode(UCHAR node, PULONGLONG available_bytes) return FALSE; }
+/********************************************************************** + * GetNumaAvailableMemoryNodeEx (KERNEL32.@) + */ +BOOL WINAPI GetNumaAvailableMemoryNodeEx(USHORT node, PULONGLONG available_bytes) +{ + FIXME("(%hu %p): stub\n", node, available_bytes); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + /*********************************************************************** * GetNumaProcessorNode (KERNEL32.@) */ @@ -4480,6 +4490,33 @@ BOOL WINAPI GetNumaProcessorNode(UCHAR processor, PUCHAR node) return FALSE; }
+/*********************************************************************** + * GetNumaProcessorNodeEx (KERNEL32.@) + */ +BOOL WINAPI GetNumaProcessorNodeEx(PPROCESSOR_NUMBER processor, PUSHORT node_number) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + +/*********************************************************************** + * GetNumaProximityNode (KERNEL32.@) + */ +BOOL WINAPI GetNumaProximityNode(ULONG proximity_id, PUCHAR node_number) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + +/*********************************************************************** + * GetNumaProximityNodeEx (KERNEL32.@) + */ +BOOL WINAPI GetNumaProximityNodeEx(ULONG proximity_id, PUSHORT node_number) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + /********************************************************************** * GetProcessDEPPolicy (KERNEL32.@) */ diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec index 9bba9ae..7151bba 100644 --- a/dlls/kernelbase/kernelbase.spec +++ b/dlls/kernelbase/kernelbase.spec @@ -576,7 +576,8 @@ # @ stub GetNextFgPolicyRefreshInfoInternal @ stdcall GetNumaHighestNodeNumber(ptr) kernel32.GetNumaHighestNodeNumber @ stdcall GetNumaNodeProcessorMaskEx(long ptr) kernel32.GetNumaNodeProcessorMaskEx -# @ stub GetNumaProximityNodeEx +@ stdcall GetNumaProximityNode(long ptr) kernel32.GetNumaProximityNode +@ stdcall GetNumaProximityNodeEx(long ptr) kernel32.GetNumaProximityNodeEx @ stdcall GetNumberFormatEx(wstr long wstr ptr ptr long) kernel32.GetNumberFormatEx @ stdcall GetNumberFormatW(long long wstr ptr ptr long) kernel32.GetNumberFormatW @ stdcall GetNumberOfConsoleInputEvents(long ptr) kernel32.GetNumberOfConsoleInputEvents diff --git a/include/winbase.h b/include/winbase.h index 887e1c1..8b2eb2c 100644 --- a/include/winbase.h +++ b/include/winbase.h @@ -1684,6 +1684,7 @@ typedef enum _PROC_THREAD_ATTRIBUTE_NUM ProcThreadAttributeParentProcess = 0, ProcThreadAttributeHandleList = 2, ProcThreadAttributeGroupAffinity = 3, + ProcThreadAttributePreferredNode = 4, ProcThreadAttributeIdealProcessor = 5, ProcThreadAttributeUmsThread = 6, ProcThreadAttributeMitigationPolicy = 7, @@ -1699,6 +1700,7 @@ typedef enum _PROC_THREAD_ATTRIBUTE_NUM #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT) #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT) #define PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY (ProcThreadAttributeGroupAffinity | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT) +#define PROC_THREAD_ATTRIBUTE_PREFERRED_NODE (ProcThreadAttributePreferredNode | PROC_THREAD_ATTRIBUTE_INPUT) #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT) #define PROC_THREAD_ATTRIBUTE_UMS_THREAD (ProcThreadAttributeUmsThread | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT) #define PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY (ProcThreadAttributeMitigationPolicy | PROC_THREAD_ATTRIBUTE_INPUT) @@ -2187,7 +2189,13 @@ WINBASEAPI BOOL WINAPI GetNamedPipeServerProcessId(HANDLE,PULONG); WINBASEAPI BOOL WINAPI GetNamedPipeServerSessionId(HANDLE,PULONG); WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO); WINBASEAPI PUMS_CONTEXT WINAPI GetNextUmsListItem(PUMS_CONTEXT); +WINBASEAPI BOOL WINAPI GetNumaAvailableMemoryNode(UCHAR,PULONGLONG); +WINBASEAPI BOOL WINAPI GetNumaAvailableMemoryNodeEx(USHORT,PULONGLONG); +WINBASEAPI BOOL WINAPI GetNumaNodeProcessorMaskEx(USHORT,PGROUP_AFFINITY); WINBASEAPI BOOL WINAPI GetNumaProcessorNode(UCHAR,PUCHAR); +WINBASEAPI BOOL WINAPI GetNumaProcessorNodeEx(PPROCESSOR_NUMBER,PUSHORT); +WINBASEAPI BOOL WINAPI GetNumaProximityNode(ULONG,PUCHAR); +WINBASEAPI BOOL WINAPI GetNumaProximityNodeEx(ULONG,PUSHORT); WINADVAPI BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD); WINADVAPI BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD); WINBASEAPI BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,LPDWORD,BOOL);