[Bug 39500] DRM kernel drivers used by some game demos crash on unimplemented function hal.dll.KeQueryPerformanceCounter (Secret Files: Tunguska, Sherlock Holmes vs Jack the Ripper)

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Feb 28 19:00:49 CST 2018


https://bugs.winehq.org/show_bug.cgi?id=39500

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
                 CC|                            |focht at gmx.net
      Fixed by SHA1|                            |02a5071674ef2c39f76c7388a10
                   |                            |d1cf63a332539
            Summary|Multiple game demos crashes |DRM kernel drivers used by
                   |with unimplemented function |some game demos crash on
                   |hal.dll.KeQueryPerformanceC |unimplemented function
                   |ounter (Secret Files:       |hal.dll.KeQueryPerformanceC
                   |Tunguska, Sherlock Holmes   |ounter (Secret Files:
                   |vs Jack the Ripper)         |Tunguska, Sherlock Holmes
                   |                            |vs Jack the Ripper)
             Status|STAGED                      |RESOLVED

--- Comment #3 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

this is fixed by commit
https://source.winehq.org/git/wine.git/commitdiff/02a5071674ef2c39f76c7388a10d1cf63a332539

Thanks Michael

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Deep Silver/Secret Files Tunguska Demo

$ WINEDEBUG=+seh,+relay,+ntoskrnl,+hal wine ./Tunguska.exe >>log.txt 2>&1
...
0041:Call KERNEL32.CreateFileA(0033f214
"\\\\.\\lirsgt",c0000000,00000000,00000000,00000003,40000000,00000000)
ret=004010b9
0041:Ret  KERNEL32.CreateFileA() retval=00000040 ret=004010b9
0041:Call
KERNEL32.DeviceIoControl(00000040,0022e013,0033f340,00000000,0033f340,00000000,0033f33c,00000000)
ret=00401a43
001f:Ret  KERNEL32.WaitForMultipleObjectsEx() retval=00000001 ret=7ecd9cec 
...
001f:trace:ntoskrnl:dispatch_create device 0x11cca0 -> file 0x11b9e0
001f:trace:ntoskrnl:IoAllocateIrp 1, 0
001f:Call ntdll.RtlAllocateHeap(00110000,00000000,00000094) ret=7ecdc269
001f:Ret  ntdll.RtlAllocateHeap() retval=0011d2e0 ret=7ecdc269
001f:trace:ntoskrnl:ExAllocatePoolWithTag 148 pool 0 -> 0x11d2e0
001f:trace:ntoskrnl:IoInitializeIrp 0x11d2e0, 148, 1
001f:Call ntdll.NtGetTickCount() ret=7ecdcb82
001f:Ret  ntdll.NtGetTickCount() retval=0051e7c2 ret=7ecdcb82
001f:Call driver dispatch 0x782000 (device=0x11cca0,irp=0x11d2e0)
001f:Call hal.KeQueryPerformanceCounter(00000000) ret=0078200a
001f:trace:ntoskrnl:KeQueryPerformanceCounter ((nil))
001f:Call ntdll.NtQueryPerformanceCounter(0054fbb0,00000000) ret=f76142c2
001f:Ret  ntdll.NtQueryPerformanceCounter() retval=00000000 ret=f76142c2
001f:Ret  hal.KeQueryPerformanceCounter() retval=0000000c7f6d191c ret=0078200a
001f:trace:ntoskrnl:__regs_IofCompleteRequest 0x11d2e0 0
001f:trace:ntoskrnl:IoCompleteRequest 0x11d2e0 0
001f:trace:ntoskrnl:IoCompleteRequest calling 0x7ecd8efc( 0x11cca0, 0x11d2e0,
0x48 )
001f:trace:ntoskrnl:IoCompleteRequest CompletionRoutine returned 0
001f:trace:ntoskrnl:IoFreeIrp 0x11d2e0
001f:trace:ntoskrnl:ExFreePoolWithTag 0x11d2e0 
...
--- snip ---

Still crashes in the end but these are different problem(s).

--- snip ---
...
001f:Call driver dispatch 0x7820c0 (device=0x11cca0,irp=0x11d2e0)
001f:Call
ntoskrnl.exe.IoAllocateMdl(0011bac8,00000005,00000000,00000000,00000000)
ret=0078165d
001f:trace:ntoskrnl:IoAllocateMdl (0x11bac8, 5, 0, 0, (nil))
001f:Call ntdll.RtlAllocateHeap(00110000,00000008,00000020) ret=7ecda39c
001f:Ret  ntdll.RtlAllocateHeap() retval=0011caf8 ret=7ecda39c
001f:Ret  ntoskrnl.exe.IoAllocateMdl() retval=0011caf8 ret=0078165d
001f:Call ntoskrnl.exe.MmProbeAndLockPages(0011caf8,00000001,00000001)
ret=00781679
001f:fixme:ntoskrnl:MmProbeAndLockPages (0x11caf8, 1, 1): stub
001f:Ret  ntoskrnl.exe.MmProbeAndLockPages() retval=0000003f ret=00781679
001f:Call
ntoskrnl.exe.MmMapLockedPagesSpecifyCache(0011caf8,00000000,00000001,00000000,00000000,00000020)
ret=0078292c
001f:fixme:ntoskrnl:MmMapLockedPagesSpecifyCache (0x11caf8, 0, 1, (nil), 0,
32): stub
001f:Ret  ntoskrnl.exe.MmMapLockedPagesSpecifyCache() retval=00000000
ret=0078292c
001f:Call ntoskrnl.exe.RtlInitUnicodeString(0054fb6c,0054fb74
L"\\Device\\atksgt") ret=00780388
001f:Call ntdll.RtlInitUnicodeString(0054fb6c,0054fb74 L"\\Device\\atksgt")
ret=7bc7e247
001f:Ret  ntdll.RtlInitUnicodeString() retval=0054fb6c ret=7bc7e247
001f:Ret  ntoskrnl.exe.RtlInitUnicodeString() retval=0054fb6c ret=00780388
001f:Call
ntoskrnl.exe.IoGetDeviceObjectPointer(0054fb6c,00020000,0054fb68,0054fb64)
ret=007803a2
001f:fixme:ntoskrnl:IoGetDeviceObjectPointer stub: L"\\Device\\atksgt" 20000
0x54fb68 0x54fb64
001f:Ret  ntoskrnl.exe.IoGetDeviceObjectPointer() retval=00000000 ret=007803a2
001f:trace:ntoskrnl:ObDereferenceObject ((nil)): stub
001f:trace:seh:raise_exception code=c0000005 flags=0 addr=0x7803c2 ip=007803c2
tid=001f
001f:trace:seh:raise_exception  info[0]=00000001
001f:trace:seh:raise_exception  info[1]=00000004
001f:trace:seh:raise_exception  eax=00000000 ebx=00000000 ecx=0054fb5c
edx=00552f54 esi=0011cd58 edi=0054fe14
001f:trace:seh:raise_exception  ebp=00000000 esp=0054fb60 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010212
001f:trace:seh:call_vectored_handlers calling handler at 0x7ecd7f55
code=c0000005 flags=0
001f:trace:seh:call_vectored_handlers handler at 0x7ecd7f55 returned 0
001f:trace:seh:call_stack_handlers calling handler at 0x7bcb01c8 code=c0000005
flags=0
001f:Call KERNEL32.UnhandledExceptionFilter(0054f664) ret=7bcb0203
wine: Unhandled page fault on write access to 0x00000004 at address 0x7803c2
(thread 001f), starting debugger...
--- snip ---

It's TAGES copy protection system here ('lirsgt', 'atksgt').

$ sha1sum secretfilestunguskademo.exe 
dud081e71f3c0e6f01ed85185afaf938fe43031df6  secretfilestunguskademo.exe

$ du -sh secretfilestunguskademo.exe 
575M    secretfilestunguskademo.exe

$ wine --version
wine-3.2-293-g0a72708126

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list