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 at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel