[resend PATCH 1/2] ntdll: Implement NtQuerySystemInformationEx(SystemCpuSetInformation).
Alexandre Julliard
julliard at winehq.org
Mon Mar 29 14:33:53 CDT 2021
Paul Gofman <pgofman at codeweavers.com> writes:
> @@ -2651,6 +2743,10 @@ NTSTATUS WINAPI NtQuerySystemInformation( SYSTEM_INFORMATION_CLASS class,
> break;
> }
>
> + case SystemCpuSetInformation:
> + return is_win64 ? NtQuerySystemInformationEx(class, NULL, 0, info, size, ret_size)
> + : STATUS_INVALID_INFO_CLASS;
> +
> case SystemRecommendedSharedDataAlignment:
> {
> len = sizeof(DWORD);
> @@ -2773,6 +2869,31 @@ NTSTATUS WINAPI NtQuerySystemInformationEx( SYSTEM_INFORMATION_CLASS class,
> break;
> }
>
> + case SystemCpuSetInformation:
> + {
> + unsigned int cpu_count = NtCurrentTeb()->Peb->NumberOfProcessors;
> + PROCESS_BASIC_INFORMATION pbi;
> + HANDLE process;
> +
> + if (!query || query_len < sizeof(HANDLE) || (is_win64 && query_len != sizeof(HANDLE)))
> + return STATUS_INVALID_PARAMETER;
I suspect these 64-bit differences are side-effects of the WoW
translation rather than fundamental limitations. We may not be able to
find a 32-bit Windows version to verify this, but there doesn't seem to
be a reason to deliberately break these calls on 32-bit Wine.
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list