[Mesa-dev] [PATCH] r200: revalidate after radeon_update_renderbuffers

Daniel Vetter daniel at ffwll.ch
Sat Oct 9 12:51:56 PDT 2010


On Sat, Oct 09, 2010 at 02:08:10PM +0200, Mario Kleiner wrote:
> 
> >On Oct 8, 2010, at 10:35 PM, Daniel Vetter wrote:
> >
> >>This seems to mitigate a crash in glxgears when I resize the window
> >>like crazy. libdrm complains that the depthbuffer is not validated
> >>(frontbuffer rendering, so the frontbuffer doesn't change). Problem
> >>not fully solved, though: After a while of constantly resizing the
> >>window the kernel cs checker complains:
> >>
> >>[drm:r100_cs_track_check] *ERROR* [drm] Buffer too small for z
> >>buffer (need 1302400 have 1257472) !
> >>[drm:r100_cs_track_check] *ERROR* [drm] zbuffer (592 4 0 550)
> >>[drm:radeon_cs_ioctl] *ERROR* Invalid command stream !
> >>
> >>So this is probably just a gross hack. Comments from people with
> >>more clue than me higly welcome ;)
> >>
> 
> This is a pure hunch, but can you check if this helps:
> 
> Edit radeon_prepare_render() in radeon_common_context.c to uncomment
> the commented out statement...
> 
> radeon_draw_buffer(radeon->glCtx, &(drawable->driverPrivate)->base);
> 
> in this comment:
> 
>         /* Intel driver does the equivalent of this, no clue if it
> is needed:
>          * radeon_draw_buffer(radeon->glCtx, &(drawable-
> >driverPrivate)->base);
>          */
> 
> I was the guy who wrote that patch and had no clue if it is needed.
> Maybe this bug provides an answer?

Indeed, this change (together with my added call to r200ValidateState)
even shuts up the kernel cs checker. Thanks for the hint, I'll resend the
new patch.

-Daniel
-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48


More information about the mesa-dev mailing list