Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- .../api-ms-win-core-threadpool-l1-1-0.spec | 2 +- .../api-ms-win-core-threadpool-l1-2-0.spec | 2 +- dlls/kernel32/kernel32.spec | 2 +- dlls/kernelbase/kernelbase.spec | 2 +- dlls/kernelbase/thread.c | 8 ++++++++ 5 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/dlls/api-ms-win-core-threadpool-l1-1-0/api-ms-win-core-threadpool-l1-1-0.spec b/dlls/api-ms-win-core-threadpool-l1-1-0/api-ms-win-core-threadpool-l1-1-0.spec index 4f4580a293..db59501219 100644 --- a/dlls/api-ms-win-core-threadpool-l1-1-0/api-ms-win-core-threadpool-l1-1-0.spec +++ b/dlls/api-ms-win-core-threadpool-l1-1-0/api-ms-win-core-threadpool-l1-1-0.spec @@ -27,7 +27,7 @@ @ stdcall ReleaseMutexWhenCallbackReturns(ptr long) kernel32.ReleaseMutexWhenCallbackReturns @ stdcall ReleaseSemaphoreWhenCallbackReturns(ptr long long) kernel32.ReleaseSemaphoreWhenCallbackReturns @ stdcall SetEventWhenCallbackReturns(ptr long) kernel32.SetEventWhenCallbackReturns -@ stub SetThreadpoolStackInformation +@ stdcall SetThreadpoolStackInformation(ptr ptr) kernel32.SetThreadpoolStackInformation @ stdcall SetThreadpoolThreadMaximum(ptr long) kernel32.SetThreadpoolThreadMaximum @ stdcall SetThreadpoolThreadMinimum(ptr long) kernel32.SetThreadpoolThreadMinimum @ stdcall SetThreadpoolTimer(ptr ptr long long) kernel32.SetThreadpoolTimer diff --git a/dlls/api-ms-win-core-threadpool-l1-2-0/api-ms-win-core-threadpool-l1-2-0.spec b/dlls/api-ms-win-core-threadpool-l1-2-0/api-ms-win-core-threadpool-l1-2-0.spec index dc110ef9ed..eb5ce3d246 100644 --- a/dlls/api-ms-win-core-threadpool-l1-2-0/api-ms-win-core-threadpool-l1-2-0.spec +++ b/dlls/api-ms-win-core-threadpool-l1-2-0/api-ms-win-core-threadpool-l1-2-0.spec @@ -21,7 +21,7 @@ @ stdcall ReleaseMutexWhenCallbackReturns(ptr long) kernel32.ReleaseMutexWhenCallbackReturns @ stdcall ReleaseSemaphoreWhenCallbackReturns(ptr long long) kernel32.ReleaseSemaphoreWhenCallbackReturns @ stdcall SetEventWhenCallbackReturns(ptr long) kernel32.SetEventWhenCallbackReturns -@ stub SetThreadpoolStackInformation +@ stdcall SetThreadpoolStackInformation(ptr ptr) kernel32.SetThreadpoolStackInformation @ stdcall SetThreadpoolThreadMaximum(ptr long) kernel32.SetThreadpoolThreadMaximum @ stdcall SetThreadpoolThreadMinimum(ptr long) kernel32.SetThreadpoolThreadMinimum @ stdcall SetThreadpoolTimer(ptr ptr long long) kernel32.SetThreadpoolTimer diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec index 47c7d63761..bfbf034f12 100644 --- a/dlls/kernel32/kernel32.spec +++ b/dlls/kernel32/kernel32.spec @@ -1462,7 +1462,7 @@ @ stdcall -import SetThreadStackGuarantee(ptr) # @ stub SetThreadToken @ stdcall -import SetThreadUILanguage(long) -# @ stub SetThreadpoolStackInformation +@ stdcall -import SetThreadpoolStackInformation(ptr ptr) @ stdcall SetThreadpoolThreadMaximum(ptr long) ntdll.TpSetPoolMaxThreads @ stdcall SetThreadpoolThreadMinimum(ptr long) ntdll.TpSetPoolMinThreads @ stdcall SetThreadpoolTimer(ptr ptr long long) ntdll.TpSetTimer diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec index caa6de1d51..5616465670 100644 --- a/dlls/kernelbase/kernelbase.spec +++ b/dlls/kernelbase/kernelbase.spec @@ -1492,7 +1492,7 @@ @ stdcall SetThreadStackGuarantee(ptr) @ stdcall SetThreadToken(ptr ptr) @ stdcall SetThreadUILanguage(long) -@ stub SetThreadpoolStackInformation +@ stdcall SetThreadpoolStackInformation(ptr ptr) @ stdcall SetThreadpoolThreadMaximum(ptr long) ntdll.TpSetPoolMaxThreads @ stdcall SetThreadpoolThreadMinimum(ptr long) ntdll.TpSetPoolMinThreads @ stdcall SetThreadpoolTimer(ptr ptr long long) ntdll.TpSetTimer diff --git a/dlls/kernelbase/thread.c b/dlls/kernelbase/thread.c index 6af9ffa406..27dc089d8d 100644 --- a/dlls/kernelbase/thread.c +++ b/dlls/kernelbase/thread.c @@ -1223,6 +1223,14 @@ PTP_WAIT WINAPI DECLSPEC_HOTPATCH CreateThreadpoolWait( PTP_WAIT_CALLBACK callba return wait; }
+/*********************************************************************** + * SetThreadpoolStackInformation (kernelbase.@) + */ +BOOL WINAPI SetThreadpoolStackInformation(PTP_POOL pool, PTP_POOL_STACK_INFORMATION info) +{ + FIXME("%p, %p stub\n", pool, info); + return TRUE; +}
/*********************************************************************** * CreateThreadpoolWork (kernelbase.@)
Hi,
While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check?
Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=64864
Your paranoid android.
=== debian10 (32 bit report) ===
kernel32: comm.c:918: Test failed: OutQueue should not be empty
Report validation errors: kernel32:comm has unaccounted for failure messages
=== debian10 (32 bit Chinese:China report) ===
kernel32: debugger.c:305: Test failed: GetThreadContext failed: 5
Report validation errors: kernel32:debugger has unaccounted for failure messages
=== debian10 (32 bit WoW report) ===
=== debian10 (64 bit WoW report) ===
kernel32: comm.c:918: Test failed: OutQueue should not be empty debugger.c:305: Test failed: GetThreadContext failed: 5
Report validation errors: kernel32:comm has unaccounted for failure messages kernel32:debugger has unaccounted for failure messages
I think we have everything to implement this and corresponding Query* function. Do we have an application/bug report using this call?
Hi Nikolay,
On 11/2/20 4:13 pm, Nikolay Sivov wrote:
I think we have everything to implement this and corresponding Query* function. Do we have an application/bug report using this call?
running mysql_install_db.exe from mariadb 10.5.0 alpha zip.
Feel free to implement them as I ended up using their stable version, which has it's own set of issues but no missing functions.
Alistair.