[Mesa-dev] Automated fuzzy testing of shader compilers - contacts in Mesa?

Ilia Mirkin imirkin at alum.mit.edu
Thu Feb 16 21:43:49 UTC 2017

On Thu, Feb 16, 2017 at 12:11 PM, Hugues Evrard <h.evrard at imperial.ac.uk> wrote:
> Hi all,
> I'm a researcher at Imperial College London, my group is working on a
> testing framework for graphics drivers, in particular shader compilers,
> and we would like to get in touch with Mesa shader compiler developers.
> Our approach has already identified more than 50 bugs, spanning from bad
> image rendering to more severe issues like system hangs or crashes,
> across drivers of all major GPU designers (Intel, AMD...). In a
> nutshell, we use the "metamorphic testing" approach to perform fuzzing
> of GLSL shaders, and we're able to eventually produce a minimal test
> case to trigger bugs. For illustrated examples, see:
> https://medium.com/@afd_icl/crashes-hangs-and-crazy-images-by-adding-zero-689d15ce922b
> We're currently conducting experiments on Mesa drivers, and we will
> report our findings soon. I'm contacting this mailing list in advance
> since two of us are going to be in the US for the Game Dev. Conference
> at the end of the month, plus an extra week or more in March to visit
> companies (Apple, Nvidia, Qualcomm, ...). In order to make the most of
> this US journey, we would like to meet people from the Mesa shader
> compiler teams. The mesa website says that the GLSL compiler is
> contributed by Intel, is that still accurate? If so, could anyone help
> us to get in touch with this team (who is maybe reading this mailing
> list)? What about AMD?

While the original GLSL compiler was contributed largely by Intel, as
I understand it, it has since been developed and improved by many
people belonging to many organizations (and in some case, even
independent contributors).

Also to make it clear, there are many different steps to a successful
compilation, and the GLSL compiler is just one of them (the first
one). Some of the steps are shared between drivers, while others are
driver- or even hardware-specific. All of them have their own teams of
developers, along with their own unique bugs.

I hope you'll find the community is pretty responsive to issues that
are identified. The best way to report issues is with reproducible
examples -- apitrace is a great tool for creating these. I believe
some of your examples use WebGL, but that can end up being subject to
browsers' implementations.

I'm definitely looking forward to getting some quality bug reports!



More information about the mesa-dev mailing list