Summary: | [r300g] Crash in dri2_invalidate_drawable | ||
---|---|---|---|
Product: | Mesa | Reporter: | Stephen E. Baker <cycoone> |
Component: | Drivers/Gallium/r300 | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | bugs.freedesktop, cycoone, kai, liquid.acid, nirbheek.chauhan, pedretti.fabio, rankincj |
Version: | 7.9 | Keywords: | have-backtrace, patch |
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Wine log showing backtrace
wine log showing backtrace for 28ee7561f9e9bac8a76d5f96fe55b890a61a7d04 st/dri: workaround weird null dereference st/dri: workaround weird null dereference Crash after applying "st/dri: workaround weird null dereference" patch Solves another weird issue with regards to invalidate buffers might help. |
I've done a number of tests with the latest git:28ee7561f9e9bac8a76d5f96fe55b890a61a7d04 With software rasterizer: Everything works as expected, game resolution changes With r300c: No crash but graphical corruption after changing resolution With r300g: Still crashes in dri2_invalidate_drawable Created attachment 40596 [details]
wine log showing backtrace for 28ee7561f9e9bac8a76d5f96fe55b890a61a7d04
Created attachment 40656 [details] [review] st/dri: workaround weird null dereference (In reply to comment #2) > Created an attachment (id=40596) [details] > wine log showing backtrace for 28ee7561f9e9bac8a76d5f96fe55b890a61a7d04 Weird. It looks like it's because ctx->st is NULL on that line, but that shouldn't be possible--the code in dri_create_context should prevent that: http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/state_trackers/dri/common/dri_context.c?h=28ee7561f9e9bac8a76d5f96fe55b890a61a7d04#n92 Does this patch fix it? Created attachment 40657 [details] [review] st/dri: workaround weird null dereference Created attachment 40688 [details]
Crash after applying "st/dri: workaround weird null dereference" patch
I think there is some improvement, I was able to change to from 600x800 to 640x480 without issue, but when going to 1024x768 I get the crash still, a couple lines later.
Now built with git revision: ff994eeff8fa9f8f889878d6b48015ca7683e22b
Actually if you compensate for the patch it is the same line :s Created attachment 40689 [details] [review] Solves another weird issue with regards to invalidate buffers might help. There is a off chance that this patch fixes the problem can you please test? Cheers Jakob. Yes, Jakob's patch fixes the issue! Does it fix it completely? Enabling you to change resolution? Or does the crash just go away? Cheers Jakob. Fixes it completely Is there anything more I should be doing to close up this issue, or are we just waiting for the patch to be merged? No its fine. Thank you for your help. I also have this problem with latest mesa and some Wine games. Attached patch in Comment 7 fixes it, I'm reopening this until the fix is committed to master. Any chance the patch from comment 7 can make it into master or at least to mesa-dev for review? It fixes crash in Star Trek Armada 2 for me and I have not encountered any regressions so far. Maybe also reassigning to Mesa core would be appropriate? *** Bug 32297 has been marked as a duplicate of this bug. *** I can confirm, that the patch presented in comment #7 (attachment 40689 [details] [review]) fixes the problem with Mesa 7.10. Please consider applying the patch and making it a candidate for the Mesa 7.10 branch. My "test case": http://bugs.winehq.org/show_bug.cgi?id=25712 Jakob, please could you possibly push the fix to master? I pushed the patch to master. Closing.. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 40590 [details] Wine log showing backtrace A game in wine crashes when the resolution changes. The crashlog attached points to r300_dri.so I am using Arch Linux with Mesa 7.9 and the r300g gallium drivers. X1400 Radeon Core 2 Duo T7400 2GB Ram