http://bugs.winehq.org/show_bug.cgi?id=21982
Summary: DPC Latency Checker barfs loading its driver Product: Wine Version: 1.1.40 Platform: x86 URL: http://www.thesycon.de/deu/latency_check.shtml OS/Version: Linux Status: NEW Keywords: download Severity: normal Priority: P2 Component: programs AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
This tool loads a driver that just measures "delayed procedure call" latency, seems like that ought to be supportable. Currently crashes on startup:
$ wine dpclat.exe wine: Unhandled page fault on write access to 0x00540180 at address 0x78c32af7 ... Backtrace: =>0 load_driver_module+0x1f1(name="C:\windows\system32\drivers\dpclat_driver.sys") [programs/winedevice/device.c:103] in winedevi ce (0x0053e718) 1 load_driver+0x3f7() [programs/winedevice/device.c:229] in winedevice (0x0053e988) 2 ServiceMain+0x11f(argc=0, argv=0x110df0) [programs/winedevice/device.c:287] in winedevice (0x0053e9f8) 3 service_thread+0x157(arg=0x1107a0) [dlls/advapi32/service.c:294] in advapi32 (0x0053ea58) ... load_driver_module+0x1f1 [programs/winedevice/device.c:103] in winedevice: movl $0x0,0xa0(%eax) 103 nt->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_BASERELOC].VirtualAddress = 0;
http://bugs.winehq.org/show_bug.cgi?id=21982
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #1 from Anastasius Focht focht@gmx.net 2010-03-08 14:48:10 --- Hello,
--- quote --- This tool loads a driver that just measures "delayed procedure call" latency, seems like that ought to be supportable. Currently crashes on startup: --- quote ---
I doubt that as Wine is userspace only and IRQL + kernel DPCs have no meaning here. So the tool's "usefulness" is limited to filling out some gaps/adding more hal/ntoskrnl stubs.
Alexandre uses the relocation directory RVA entry as hint if relocations have already been processed for native subsystem binaries. The PE header page protection is explicitly adjusted to read-only upon mapping:
--- dlls/ntdll/virtual.c --- static NTSTATUS map_image( HANDLE hmapping, int fd, char *base, SIZE_T total_size, SIZE_T mask, SIZE_T header_size, int shared_fd, HANDLE dup_mapping, PVOID *addr_ptr ) { ... /* set the image protections */
VIRTUAL_SetProt( view, ptr, ROUND_SIZE( 0, header_size ), VPROT_COMMITTED | VPROT_READ );
sec = (IMAGE_SECTION_HEADER*)((char *)&nt->OptionalHeader+nt->FileHeader.SizeOfOptionalHeader); ... } --- dlls/ntdll/virtual.c ---
Native subsystem relocations are specially processed hence I suggest to temporarily adjust page protection in winedevice' load_driver_module() to set the hint (VirtualProtect before and after reloc hint).
Regards
http://bugs.winehq.org/show_bug.cgi?id=21982
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |alpha_one_x86@first-world.i | |nfo
--- Comment #2 from Jeff Zaroyko jeffz@jeffz.name 2010-03-11 05:59:16 --- *** Bug 22004 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=21982
--- Comment #3 from Anastasius Focht focht@gmx.net 2010-06-15 16:29:00 --- Hello,
fixed by commit fe1360252fea60fc0b0fe55635e53aaaf793de99
Create new bugs to stub out unimplemented methods as encountered. Anyway, this kernel driver won't be useful at all.
Regards
http://bugs.winehq.org/show_bug.cgi?id=21982
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #4 from Alexandre Julliard julliard@winehq.org 2010-06-15 16:39:16 --- Fixed.
http://bugs.winehq.org/show_bug.cgi?id=21982
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org 2010-06-18 12:47:31 --- Closing bugs fixed in 1.2-rc4.
http://bugs.winehq.org/show_bug.cgi?id=21982
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |fe1360252fea60fc0b0fe55635e | |53aaaf793de99
--- Comment #6 from Anastasius Focht focht@gmx.net 2011-12-15 05:27:30 CST --- Hello,
filling fields ...
Regards
http://bugs.winehq.org/show_bug.cgi?id=21982
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kennybobs@o2.co.uk
--- Comment #7 from Anastasius Focht focht@gmx.net 2011-12-15 06:19:17 CST --- *** Bug 22795 has been marked as a duplicate of this bug. ***