https://bugs.winehq.org/show_bug.cgi?id=55014
Bug ID: 55014 Summary: kernel32:comm crashes in WoW64 mode on Linux Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: kernel32 Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com Distribution: ---
kernel32:comm crashes in WoW64 mode on Linux:
comm.c:708: Found Com port COM1. Connected devices may disturb results Unhandled exception: page fault on read access to 0x0000000000000000 in 64-bit code (0x007f47b448083c). [...] =>0 0x007f47b448083c wait_for_event+0x1c(arg=<internal error>) [/home/winetest/tools/testbot/var/wine-wow64/../wine/dlls/ntdll/unix/serial.c:945] in ntdll.so (0000000000000000) 0x007f47b448083c wait_for_event+0x1c [/home/winetest/tools/testbot/var/wine-wow64/../wine/dlls/ntdll/unix/serial.c:945] in ntdll.so: mov (%rdi), %rdi 945 if (!server_get_unix_fd( commio->hDevice, FILE_READ_DATA | FILE_WRITE_DATA, &fd, &needs_close, NULL, NULL ))
See https://test.winehq.org/data/patterns.html#kernel32:comm
The failure seems to only happen on the TestBot VMs, maybe because of QEmu, particularly because it does not set the baud rate correctly.
A bisect shows that this failure started with the commit below:
commit b337c5b1a1757b2abbc90a7c6955d64242861ab9 Author: Alexandre Julliard julliard@winehq.org Date: Fri Jun 2 09:35:29 2023 +0200
ntdll: Use the default ABI for all functions on the Unix side.