0 Replies Latest reply on Apr 24, 2018 8:44 AM by kd-11

    Bug in pixel transfer operations (OpenGL)

    kd-11

      I have encountered a rather interesting bug with pixel transfer operations. I have tested this on several AMD cards from the 7000 series to the RX 480 and 580.

      The core of the problem is that when a texture is created with immutable storage, pixel transfer operations with endianness swap will always fail with GL_OUT_OF_MEMORY. A sample application is attached which attempts to isolate the problem. Compiled binary is provided for convenience as well as the source.

       

      Notes:

      - When the texture is created with mutable storage, readback works but when immutable is used it does not.

      - Also note that while the trigger is a pack operation, setting the unpack state to swap bytes also will cause the GL_OUT_OF_MEMORY error. The error is not real, as can be demostrated with the attached sample and source code.

      - The sample works fine on all other drivers I have tried.