ATI FireGL V7700 driver crash involving glBlitFramebuffer

I’m getting a driver crash (brings down video on the whole PC), and I expect it’s probably a driver bug, but I thought I’d post it on the off chance that someone knows a workaround. The rough outline of events is as follows:

[li]Create multisample FBO (4 samples, color + packed depth/stencil render buffers), bound to draw target[/li][li]Create single-sample FBO (color + packed depth/stencil render buffers), bound to read draw target[/li][li]render some stuff[/li][li]resolve samples using glBlitFramebuffer from the multi-sampled FBO to the single-sampled FBO[/li][li]read some pixel data using glReadPixels[/li][li]delete render buffers and FBOs[/li][li]Render in a previously-existing on-screen OpenGL context[/li][li]crash[/li][/ul]

Since the driver dies after I cleaned up the FBOs, I thought I might be doing that wrong. But if I omit that step and just let stuff leak, the crash happens just the same.

On the other hand, if I omit the glBlitFramebuffer call, the crash doesn’t happen. I was using the mask GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT. If I change that to GL_COLOR_BUFFER_BIT, it no longer crashes (but I may need the depth). If I change the mask to GL_DEPTH_BUFFER_BIT, or GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT, it does crash.

As indicated in the title, the problem is occurring on ATI FireGL V7700. On the other hand, on a PC with an ATI Radeon HD 4670, the same code works fine.

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.