http://bugs.winehq.org/show_bug.cgi?id=35144
Bug ID: 35144 Summary: NVIDIA CUDA Toolkit v5.5 installer fails (SetupDiGetINFClassW whitelists only 'Chicago', ignoring WINEPREFIX WinVer setting) Product: Wine Version: 1.7.8 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: setupapi Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Classification: Unclassified
Hello folks,
with bug 35122 fixed the installer still fails.
The installer is wrapped. Let it unpack first and then CTRL+C when the error dialog box is shown for easier reproducing. Run the extracted main installer.
Relevant part of trace log:
--- snip --- $ pwd /home/focht/.wine/drive_c/NVIDIA/CUDA
$ WINEDEBUG=+tid,+seh,+relay,+setupapi wine ./setup.exe >>log2.txt 2>&1 ... 0025:Call setupapi.SetupDiGetINFClassW(011bd2b8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf",01f7e27c,01f7e28c,00000020,00000000) ret=02bd7c0f 0025:Call KERNEL32.GetFileAttributesW(011bd2b8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e27758c 0025:Ret KERNEL32.GetFileAttributesW() retval=00000020 ret=7e27758c 0025:Call KERNEL32.GetPrivateProfileStringW(7e29b2da L"Version",7e29b2c6 L"Signature",00000000,01f7dfa8,00000104,011bd2b8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e277669 0025:Ret KERNEL32.GetPrivateProfileStringW() retval=0000000c ret=7e277669 0025:Call KERNEL32.lstrcmpiW(01f7dfa8 L"$Windows NT$",7e29b20c L"$Chicago$") ret=7e277692 0025:Ret KERNEL32.lstrcmpiW() retval=00000001 ret=7e277692 0025:Ret setupapi.SetupDiGetINFClassW() retval=00000000 ret=02bd7c0f 0025:Call KERNEL32.GetLastError() ret=02b91257 0025:Ret KERNEL32.GetLastError() retval=00000000 ret=02b91257 0025:Call ntdll.RtlAllocateHeap(00110000,00000000,00000050) ret=02bfc433 0025:Ret ntdll.RtlAllocateHeap() retval=011bf318 ret=02bfc433 0025:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,01f7e22c) ret=02bff857 0025:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b83a8ef ip=7b83a8ef tid=0025 0025:trace:seh:raise_exception info[0]=19930520 0025:trace:seh:raise_exception info[1]=01f7e248 0025:trace:seh:raise_exception info[2]=02c4e85c 0025:trace:seh:raise_exception eax=7b826921 ebx=7b8ba000 ecx=19930520 edx=01f7e174 esi=01f7e218 edi=01f7e1e0 0025:trace:seh:raise_exception ebp=01f7e1b8 esp=01f7e154 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00000283 ... 0025:Call KERNEL32.OutputDebugStringW(024205d8 L" 46.667 | ERROR: [NVI2.NVInstaller] 932@CNVInstaller::AddPackages : COM error: Exception {0x80004005; File: NVInstaller.cpp; Line: 1128}. \n") ret=1001aa05 0025:Ret KERNEL32.OutputDebugStringW() retval=01f7db30 ret=1001aa05 ... 0025:Call KERNEL32.OutputDebugStringW(024219e0 L" 46.669 | ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0x80004005; File: InstallationStepper.cpp; Line: 1193} - going to fail state. \n") ret=1001aa05 0025:Ret KERNEL32.OutputDebugStringW() retval=01f7de40 ret=1001aa05 ... --- snip ---
Dump of 'C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf' file with 'Version' section:
--- snip --- ; NVIDIA Windows XP (32 bit) Display INF file ; Copyright (c) NVIDIA Corporation. All rights reserved.
[Version] Signature = "$Windows NT$" Provider = %NVIDIA% ClassGUID = {4D36E968-E325-11CE-BFC1-08002BE10318} Class = Display DriverVer = 06/28/2013, 6.14.13.2057 CatalogFile = nv4_disp.CAT ... --- snip ---
Source: http://source.winehq.org/git/wine.git/blob/09524be58380b612d0a9d2ba023ac2579...
--- snip --- 4047 BOOL WINAPI SetupDiGetINFClassW(PCWSTR inf, LPGUID class_guid, PWSTR class_name, 4048 DWORD size, PDWORD required_size) 4049 { 4050 BOOL have_guid, have_name; 4051 DWORD dret; 4052 WCHAR buffer[MAX_PATH]; 4053 4054 if (!inf) 4055 { 4056 SetLastError(ERROR_INVALID_PARAMETER); 4057 return FALSE; 4058 } 4059 4060 if (INVALID_FILE_ATTRIBUTES == GetFileAttributesW(inf)) 4061 { 4062 FIXME("%s not found. Searching via DevicePath not implemented\n", debugstr_w(inf)); 4063 SetLastError(ERROR_FILE_NOT_FOUND); 4064 return FALSE; 4065 } 4066 4067 if (!class_guid || !class_name || !size) 4068 { 4069 SetLastError(ERROR_INVALID_PARAMETER); 4070 return FALSE; 4071 } 4072 4073 if (!GetPrivateProfileStringW(Version, Signature, NULL, buffer, MAX_PATH, inf)) 4074 return FALSE; 4075 4076 if (lstrcmpiW(buffer, Chicago)) 4077 return FALSE; 4078 ... --- snip ---
The 'Chicago' filter (codename for 'Windows NT 4.0') prevents further processing.
Wine prefixes have WinVer = 'Windows XP' setting by default so it seems somehow not logical to bail out here.
$ sha1sum cuda_5.5.20_winxp_general_32.exe 19003fc955795e1a0d01d3e72b2df91c109d1e43 cuda_5.5.20_winxp_general_32.exe
$ du -sh cuda_5.5.20_winxp_general_32.exe 460M cuda_5.5.20_winxp_general_32.exe
$ wine --version wine-1.7.8-232-g3bad812
Regards
http://bugs.winehq.org/show_bug.cgi?id=35144
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, Installer URL| |http://developer.download.n | |vidia.com/compute/cuda/5_5/ | |rel/installers/cuda_5.5.20_ | |winxp_general_32.exe
http://bugs.winehq.org/show_bug.cgi?id=35144
--- Comment #1 from Stefan Leichter Stefan.Leichter@camLine.com --- http://source.winehq.org/git/wine.git/commitdiff/6aace3014d355d355e802299d62...
http://bugs.winehq.org/show_bug.cgi?id=35144
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |6aace3014d355d355e802299d62 | |a34e8865951ba Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #2 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit http://source.winehq.org/git/wine.git/commitdiff/6aace3014d355d355e802299d62...
Thanks Stefan
--- snip --- ... 0025:Call setupapi.SetupDiGetINFClassW(011bd0e8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf",01f7e27c,01f7e28c,00000020,00000000) ret=02bd7c0f 0025:Call KERNEL32.GetFileAttributesW(011bd0e8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e2fb58c 0025:Ret KERNEL32.GetFileAttributesW() retval=00000020 ret=7e2fb58c 0025:Call KERNEL32.GetPrivateProfileStringW(7e31f2fa L"Version",7e31f2e6 L"Signature",00000000,01f7dfa8,00000104,011bd0e8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e2fb669 0025:Ret KERNEL32.GetPrivateProfileStringW() retval=0000000c ret=7e2fb669 0025:Call KERNEL32.lstrcmpiW(01f7dfa8 L"$Windows NT$",7e31f22c L"$Chicago$") ret=7e2fb692 0025:Ret KERNEL32.lstrcmpiW() retval=00000001 ret=7e2fb692 0025:Call KERNEL32.lstrcmpiW(01f7dfa8 L"$Windows NT$",7e31f314 L"$Windows NT$") ret=7e2fb6b1 0025:Ret KERNEL32.lstrcmpiW() retval=00000000 ret=7e2fb6b1 0025:Call KERNEL32.GetPrivateProfileStringW(7e31f2fa L"Version",7e31f240 L"ClassGUID",00000000,01f7dfa8,00000104,011bd0e8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e2fb703 0025:Ret KERNEL32.GetPrivateProfileStringW() retval=00000026 ret=7e2fb703 0025:Call rpcrt4.UuidFromStringW(01f7dfaa L"4D36E968-E325-11CE-BFC1-08002BE10318",01f7e27c) ret=7e2fb751 0025:Ret rpcrt4.UuidFromStringW() retval=00000000 ret=7e2fb751 0025:Call KERNEL32.GetPrivateProfileStringW(7e31f2fa L"Version",7e31f254 L"Class",00000000,01f7dfa8,00000104,011bd0e8 L"C:\NVIDIA\CUDA\Display.Driver\nv4_disp.inf") ret=7e2fb80e 0025:Ret KERNEL32.GetPrivateProfileStringW() retval=00000007 ret=7e2fb80e 0025:Ret setupapi.SetupDiGetINFClassW() retval=00000001 ret=02bd7c0f ... --- snip ---
The installer still fails but that's another bug ;-)
Regards
https://bugs.winehq.org/show_bug.cgi?id=35144
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.9.
https://bugs.winehq.org/show_bug.cgi?id=35144
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |1.6.x
https://bugs.winehq.org/show_bug.cgi?id=35144
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|1.6.x |---
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Removing 1.6.x milestone from bugs included in 1.6.2.
https://bugs.winehq.org/show_bug.cgi?id=35144
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://developer.download.n |https://web.archive.org/web |vidia.com/compute/cuda/5_5/ |/20140410205945/http://deve |rel/installers/cuda_5.5.20_ |loper.download.nvidia.com/c |winxp_general_32.exe |ompute/cuda/5_5/rel/install | |ers/cuda_5.5.20_winxp_gener | |al_32.exe