opengl problems (commit 00633e37bcc8da1032f34ea2d87814739de07db4)
Alex Romosan
romosan at sycorax.lbl.gov
Sun Oct 28 22:00:19 CDT 2007
somewhere between release 0.9.46 and 0.9.47 of wine i started having
problems with applications that use opengl. using git-bisect i found
that commit 00633e37bcc8da1032f34ea2d87814739de07db4 (winex11: Use an
offscreen redirected window for child OpenGL rendering.) was the first
bad commit.
in particular i am trying to run tracked part of racer 0.5.0 final
(http://racer.nl/dl_win32.htm). doing a git-checkout
00633e37bcc8da1032f34ea2d87814739de07db4 and running tracked i get the
following crash when i try to import a track:
wine: Unhandled page fault on read access to 0x00000014 at address 0x7e542141 (thread 0009), starting debugger...
Unhandled exception: page fault on read access to 0x00000014 in 32-bit code (0x7e542141).
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7e542141 ESP:0033fdb4 EBP:0033fdec EFLAGS:00210246( - 00 -RIZP1)
EAX:00000000 EBX:7e578714 ECX:0000494c EDX:00000000
ESI:00000001 EDI:0014da98
Stack dump:
0x0033fdb4: 00000000 00000000 000000aa 0000001e
0x0033fdc4: 0041fa7d 00000049 00000000 00000000
0x0033fdd4: 0014da98 0042567c 004256b5 7ed1f980
0x0033fde4: 00000001 0014da98 0033fe0c 7ed072db
0x0033fdf4: 0033fe60 00443457 ffffffff 00408fa0
0x0033fe04: 7ed07299 00000000 0033ff08 0041b192
Backtrace:
=>1 0x7e542141 X11DRV_wglFlush+0x31() [/home/romosan/cvs/wine/dlls/winex11.drv/opengl.c:1952] in winex11 (0x0033fdec)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
2 0x7ed072db wine_glFlush+0x4b() [/home/romosan/cvs/wine/dlls/opengl32/wgl.c:584] in opengl32 (0x0033fe0c)
3 0x0041b192 in tracked (+0x1b192) (0x0033ff08)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported form for const value __wine_dbch___default (1)
4 0x7ee5809e start_process+0xee(arg=0x0) [/home/romosan/cvs/wine/dlls/kernel32/process.c:839] in kernel32 (0x0033ffe8)
5 0xb7e7f867 wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000)
0x7e542141 X11DRV_wglFlush+0x31 [/home/romosan/cvs/wine/dlls/winex11.drv/opengl.c:1952] in winex11: movl 0x14(%eax),%edi
1952 update_drawable(((Wine_GLContext*)NtCurrentTeb()->glContext)->physDev);
Modules:
Module Address Debug info Name (77 modules)
PE 400000- 457000 Export tracked
PE 10000000-1007d000 Deferred fmod
PE 65f00000-65fc2000 Deferred ole32
ELF 7aaf3000-7ab3c000 Deferred dsound<elf>
\-PE 7ab00000-7ab3c000 \ dsound
ELF 7b95a000-7ba20000 Deferred libasound.so.2
ELF 7bf00000-7bf03000 Deferred <wine-loader>
ELF 7bf43000-7bf58000 Deferred midimap<elf>
\-PE 7bf50000-7bf58000 \ midimap
ELF 7bf58000-7bf70000 Deferred msacm32<elf>
\-PE 7bf60000-7bf70000 \ msacm32
ELF 7bf70000-7bfa6000 Deferred winealsa<elf>
\-PE 7bf80000-7bfa6000 \ winealsa
ELF 7bfa6000-7bfab000 Deferred libtxc_dxtn.so
ELF 7bfba000-7bfc3000 Deferred libxcursor.so.1
ELF 7bfc3000-7bfcb000 Deferred libxrender.so.1
ELF 7bfcb000-7bfe8000 Deferred imm32<elf>
\-PE 7bfd0000-7bfe8000 \ imm32
ELF 7bfe8000-7bfeb000 Deferred libxinerama.so.1
ELF 7c080000-7c083000 Deferred libxcomposite.so.1
ELF 7e294000-7e4ef000 Deferred r200_dri.so
ELF 7e4ef000-7e580000 Dwarf winex11<elf>
\-PE 7e500000-7e580000 \ winex11
ELF 7e5cc000-7e5ec000 Deferred libexpat.so.1
ELF 7e5ec000-7e615000 Deferred libfontconfig.so.1
ELF 7e615000-7e62a000 Deferred libz.so.1
ELF 7e62a000-7e699000 Deferred libfreetype.so.6
ELF 7e699000-7e701000 Deferred msvcrt<elf>
\-PE 7e6b0000-7e701000 \ msvcrt
ELF 7e701000-7e78f000 Deferred winmm<elf>
\-PE 7e710000-7e78f000 \ winmm
ELF 7e78f000-7e7b5000 Deferred msacm32<elf>
\-PE 7e7a0000-7e7b5000 \ msacm32
ELF 7e7b5000-7e7cb000 Deferred glu32<elf>
\-PE 7e7c0000-7e7cb000 \ glu32
ELF 7e7cb000-7e865000 Deferred gdi32<elf>
\-PE 7e7e0000-7e865000 \ gdi32
ELF 7e865000-7e9a3000 Deferred user32<elf>
\-PE 7e880000-7e9a3000 \ user32
ELF 7e9a3000-7e9ae000 Deferred libgcc_s.so.1
ELF 7ea99000-7eaa2000 Deferred libdrm.so.2
ELF 7eaa2000-7eaa7000 Deferred libxfixes.so.3
ELF 7eaa7000-7eaaa000 Deferred libxdamage.so.1
ELF 7eaaa000-7eaaf000 Deferred libxdmcp.so.6
ELF 7eaaf000-7eab2000 Deferred libxau.so.6
ELF 7eab2000-7eb2b000 Deferred libglu.so.1
ELF 7eb2b000-7eb8b000 Deferred libgl.so.1
ELF 7eb8b000-7ec77000 Deferred libx11.so.6
ELF 7ec77000-7ec85000 Deferred libxext.so.6
ELF 7ec85000-7ec9c000 Deferred libice.so.6
ELF 7ec9c000-7eca4000 Deferred libsm.so.6
ELF 7eca4000-7ed25000 Dwarf opengl32<elf>
\-PE 7ecc0000-7ed25000 \ opengl32
ELF 7ed25000-7ed6d000 Deferred advapi32<elf>
\-PE 7ed30000-7ed6d000 \ advapi32
ELF 7ed6d000-7ed80000 Deferred libresolv.so.2
ELF 7ed80000-7ed9e000 Deferred iphlpapi<elf>
\-PE 7ed90000-7ed9e000 \ iphlpapi
ELF 7ed9e000-7edca000 Deferred ws2_32<elf>
\-PE 7edb0000-7edca000 \ ws2_32
ELF 7edca000-7ede4000 Deferred wsock32<elf>
\-PE 7edd0000-7ede4000 \ wsock32
ELF 7ede4000-7ef0c000 Dwarf kernel32<elf>
\-PE 7ee00000-7ef0c000 \ kernel32
ELF 7ef0c000-7ef17000 Deferred libnss_files.so.2
ELF 7ef17000-7ef21000 Deferred libnss_nis.so.2
ELF 7ef21000-7ef39000 Deferred libnsl.so.1
ELF 7ef39000-7ef5f000 Deferred libm.so.6
ELF 7ef5f000-7f000000 Deferred ntdll<elf>
\-PE 7ef70000-7f000000 \ ntdll
ELF b7cf0000-b7cf5000 Deferred libxxf86vm.so.1
ELF b7cf5000-b7cfe000 Deferred libnss_compat.so.2
ELF b7cff000-b7d03000 Deferred libdl.so.2
ELF b7d03000-b7e4b000 Deferred libc.so.6
ELF b7e4c000-b7e63000 Deferred libpthread.so.0
ELF b7e78000-b7f8c000 Dwarf libwine.so.1
ELF b7f8e000-b7fac000 Deferred ld-linux.so.2
Threads:
process tid prio (all id:s are in hex)
0000000a
0000000b 0
00000008 (D) C:\SIMS\RACER\tracked.exe
0000000e 2
0000000d 15
0000000c 15
00000009 0 <==
also the application window shows a copy of some other window i have
opened on the screen before it crashes instead of starting with a
black window and then drawing the imported track objects. going to the
commit just before this one gets tracked working (although the opengl
window is drawn in the wrong place) but the application works in
general.
i tried to undo various parts of the patch but i wasn't able figure
out anything. maybe somebody has some ideas. let me know if you need
more information.
--alex--
--
| I believe the moment is at hand when, by a paranoiac and active |
| advance of the mind, it will be possible (simultaneously with |
| automatism and other passive states) to systematize confusion |
| and thus to help to discredit completely the world of reality. |
More information about the wine-devel
mailing list