[Bug 97473] Memory corruption when uploading DXT5 cubemap faces

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Aug 24 22:43:34 UTC 2016


--- Comment #1 from Kenneth Graunke <kenneth at whitecape.org> ---
I looked into this a bit earlier today:

The texture in question is 4096x4096x6, Y-tiled, and DXT5.  With a 4x4 block
size and 16 bytes per block, this gives us a pitch of 16384.  The size of a
single layer is 67108864.  This is larger than brw->max_gtt_map_object_size, so
we think we can't map it in the GTT (using a fence for detiling).

This makes intel_map_texture_image select the BLT based option, even though we
normally wouldn't (for several reasons).

However, our blitter code can't handle compressed data at all.  It doesn't
realize there are blocks involved, and assumes that it's a 4096x4096 image with
a pitch of 16384, and so the buffer must be woefully undersized, and asserts. 
(Without asserts it probably reads/writes wildly out of bounds data.)

You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20160824/8df274e3/attachment.html>

More information about the intel-3d-bugs mailing list