FBO crash in ATI Radeon 5450

I did a test application that opens a form with 12 instances of my OpenGL control,.
Each one creates its FBO of 4096x4096 with associated depth texture for shadowmapping.
On the ATI Radeon 5450, with the latest Catalyst 12.6, after I’ve created 6 or 7 instances of the OpenGL control, I get an Access Violation Exception (“Attempted to read or write protected memory. This is often an indication that other memory is corrupt.”) when I do this call:


[FONT=Courier New][SIZE=2][FONT=Courier New][SIZE=2][COLOR=#2b91af]glC[/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2]heckFramebufferStatusEXT(GL_[/SIZE][/FONT][FONT=Courier New][SIZE=2]FRAMEBUFFER_EXT);
[/SIZE][/FONT]

[FONT=Courier New][SIZE=2]

after the creation of the FBO.[/SIZE][/FONT]

Each OpenGL viewport has its own graphics context.
I check the glGetError() before doing that call, but I get GL_NO_ERROR.
Is it going out of graphics memory?
Why does it crash instead of giving a GL_OUT_OF_MEMORY error?
How can I avoid this crash?

The card has 1GB of VRam.
On an ATI FirePro V3750 with 256MB of VRam it doesn’t crash and can initialize all the 12 viewports successfully…

What do you mean by “OpenGL control”?
Also, why you use separate contexts for the separate FBOs?
The whole approach doesn’t seem right.

Hi,

for control I mean a Windows Form control with an OpenGL viewport.

Each control has its own opengl graphics context and I don’t use the wglShareLists.

It could be because of the driver. You can experiment and see what gets rid of the problem : make smaller depth textures. Try older driver versions to see if the driver is present in the older ones.
You can also create a small example and post it on the drivers forum.