[Mesa-stable] [Mesa-dev] [PATCH 2/2] mesa: _mesa_format_convert should be endian agnostic
Emil Velikov
emil.l.velikov at gmail.com
Mon Aug 3 08:40:46 PDT 2015
Hi Oded,
On 2 August 2015 at 11:37, Oded Gabbay <oded.gabbay at gmail.com> wrote:
> This patch fixes a bug that is manifested in the read path of mesa when
> running on big-endian machines. The effects can be seen when running
> piglit sanity test and/or taking a screen capture.
>
> The bug is caused when _mesa_format_convert receives src_format as
> mesa_format, which it thens changes to mesa_array_format. During this
> change, it checks for endianness and swaps the bytes accordingly.
> However, because the bytes are _already_ swapped in the memory itself
> (being written there by llvmpipe), and src_format value matches the
> _actual_ contents of the memory, the result of the read is wrong.
>
I'm assuming that you're looked at swrast + softpipe as well - do they
use the same approach or is llvmpipe the odd one out ?
Curious if your work has any effect on the big endian + r600 issue
[1]. I believe Christian Zigotzky (Cc'ed) was very passionate about
getting his r600 working - perhaps he can give your patches a test ?
... just to make sure that things don't go even worse :)
Cheers,
Emil
[1] https://bugs.freedesktop.org/show_bug.cgi?id=72877
More information about the mesa-stable
mailing list