This test always reproduces the issue for me: piglit/bin/arb_vertex_buffer_object-vbo-subdata-many drawarrays -fbo -auto There are rejected IBs and it hangs sometimes. It started to fail with this commit: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6d434252e239bc872549e59c64eb3d0e5dab0655 which is probably unrelated to the issue, but it makes the graphics IB a little bit bigger. Also, I think R700 is generally in a bad shape. I haven't been able to run piglit with concurrency and without hangs, and I have already disabled async DMA, geometry shaders, and pipelined buffer uploads. Marek On Sat, Apr 19, 2014 at 11:54 AM, Christian König <deathsimple@xxxxxxxxxxx> wrote: > Hi Marek, > > I've noticed this before as well, and I agree that it looks like a memory > corruption. Not sure if the async DMA on the GPU or the CPU is overwriting > something because of a race condition or something like this. > > Anyway, can you come up with a simple test case to reproduce the issue? For > me it occurred only randomly while working on UVD support for R7xx. If you > have something more reliable I could dig into it with my RV710. > > Christian. > > Am 19.04.2014 01:48, schrieb Marek Olšák: >> >> Hi, >> >> If you submit a lot of graphics and DMA IBs interleaved, the graphics >> CS checker sometimes fails with this message: >> >> [ 3846.435661] Forbidden register 0x0014 in cs at 9 >> [ 3846.435664] [drm:radeon_cs_ib_chunk] *ERROR* Invalid command stream ! >> >> This error is only used for type-0 packets, but we don't use these >> packets on R700 at all. Somehow, the graphics CS checker received >> either the DMA IB or random garbage. My guess is there is memory >> corruption happening during IB uploading and/or IB checking in the >> kernel. Also, if you are unlucky, the GPU hangs instead. >> >> The CS thread offloading was disabled in Mesa, so the user space was >> single-threaded. >> >> There are 2 ways to fix this: >> - disable async DMA in Mesa >> - call usleep(1) after the RADEON_CS ioctl returns >> >> This is just a heads-up. In the worst case, we can disable async DMA >> for R700 in Mesa. >> >> Marek >> _______________________________________________ >> dri-devel mailing list >> dri-devel@xxxxxxxxxxxxxxxxxxxxx >> http://lists.freedesktop.org/mailman/listinfo/dri-devel > > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel