I noticed lockups with the sauerbraten when there are some explosions in the game. I am using 2009-07-13 mesa master git (up to bb4c703587) under a RV530 with no KMS, compiled without libdrm_radeon: GL_RENDERER = Mesa DRI R300 (RV530 71C5) 20090101 x86/MMX/SSE2 TCL To get the lockups "dynamic light on and set to high quality" is required but not sufficient. Specifically I am getting the lockups with these GFX options: shaders on -> high detail water -> refr/refl:off - caustics: on waterfalls -> refr/refl: off soft shadow: off stencil shadow: on glare: off grass: on dynamic light on -> high quality soft explosion -> low quality water/lave vert anim: on glass reflect: on decals: on fix tjoints: on textures -> low quality modesl: all on animation: high quality The easiest way to trigger the lockup is: 1) singleplayer -> Start Private Stan Sauer 2) Run and Gun Part II 3) go up the stairs, pull the lever, kill one or two monsters on that room, pull another lever on the left, enter the room 4) shoot the cans inside that room -> lockup
I forgot to add that I am using sauerbraten 20080620 that comes with Ubuntu 9.04. I still can ssh into the system: the game uses 100% CPU; I can kill the game but then Xorg uses 100% CPU and I can't kill it.
Mass version move, cvs -> git
The problem is that we run out of free texture coords to do the fog. Proper solution is known (stuff texcoord and fogcoord in one vertex attribute) but implementation isn't trivial. As a temporary solution we should probably fall back to software rendering.
Created attachment 29697 [details] [review] fallback to software rendering if we run out of free texcoords Could you try this patch?
Created attachment 29700 [details] [review] fix v2 there was a typo in previous patch. try this one.
(In reply to comment #5) > Created an attachment (id=29700) [details] > fix v2 > > there was a typo in previous patch. try this one. > I wanted to test the patch, but actually that map (with or without the patch applied) is visually corrupted and show these warnings: bo(0x1302cfb8, 65536) is mapped (-1) can't valide it. validated 0x1302cfb8 [0x81034000, 0x85034000] bo(0x1302cfb8, 65536) is mapped (-1) can't valide it. validated 0x1302cfb8 [0x81034000, 0x85034000] [...] *********************************WARN_ONCE********************************* File radeon_dma.c function radeonReleaseDmaRegions line 348 Leaking dma buffer object! *************************************************************************** bo(0x1302cfb8, 65536) is mapped (-6) can't valide it. validated 0x1302cfb8 [0x838B4000, 0x838B6000] [...] This problem started with http://cgit.freedesktop.org/mesa/mesa/commit/?id=284a7af274bc148f112bd0ebb40583923ee26b49 , however before that I had a segfault that first appeared with http://cgit.freedesktop.org/mesa/mesa/commit/?id=6f9dbe773953b024075910b3bec11ebc96c2e8e0 . There is a patch for that at http://marc.info/?l=mesa3d-dev&m=125354446011979&w=2 but it makes sauerbraten segfault with: http://pastebin.com/m5a27e675
(In reply to comment #5) > Created an attachment (id=29700) [details] > fix v2 > > there was a typo in previous patch. try this one. > I also tested the 7.6 branch. Without the patch the lockups is now gone, but instead of it I get this: *********************************WARN_ONCE********************************* File r300_state.c function r500SetupRSUnit line 1596 Don't know how to satisfy InputsRead=0x00000001 *************************************************************************** After applying the patch to the 7.6 branch that warning also disappears. However the patch make the explosion very very slow.
(In reply to comment #7) > (In reply to comment #5) > > Created an attachment (id=29700) [details] [details] > > fix v2 > > > > there was a typo in previous patch. try this one. > > > > I also tested the 7.6 branch. Without the patch the lockups is now gone, but > instead of it I get this: > > *********************************WARN_ONCE********************************* > File r300_state.c function r500SetupRSUnit line 1596 > Don't know how to satisfy InputsRead=0x00000001 > *************************************************************************** > > After applying the patch to the 7.6 branch that warning also disappears. > However the patch make the explosion very very slow. > The slowdown is to be expected, because the driver is falling back to software rendering. I'm going to push this patch for both branches.
Fix committed. Closing.
> I wanted to test the patch, but actually that map (with or without the patch > applied) is visually corrupted and show these warnings: Note that this issue appeared in master after 7.6 is now also fixed.
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.