Skip to content

Frequently Asked Questions (FAQ)

This FAQ covers common questions about using, building, and contributing to IGT GPU Tools.

What is IGT GPU Tools?

IGT GPU Tools is a collection of low-level tests and utilities used to validate and debug Linux DRM (Direct Rendering Manager) graphics drivers. It focuses primarily on Intel GPUs but supports other platforms in varying degrees.

How do I build IGT?

You can build IGT using Meson and Ninja. Here's a quick example:

meson setup build && ninja -C build

Make sure required dependencies are installed. You can refer to:

  • Dockerfile.build-fedora
  • Dockerfile.build-debian or Dockerfile.build-debian-minimal

They contain up-to-date package lists for common distros.

How do I run tests?

Tests are located in the tests/ directory and can be run directly. For example:

sudo ./build/tests/core_auth

Use --list-subtests to list available subtests and --run-subtest to run a specific one:

sudo ./build/tests/core_auth --list-subtests
sudo ./build/tests/core_auth --run-subtest basic-auth

You can also run tests using the scripts/run-tests.sh wrapper, which supports filtering and batch execution.

Do I need to run as root?

Most tests require root privileges and a system without a running graphical session (X or Wayland). Some tools may work without root, especially those that only inspect or decode state.

What platforms are supported?

IGT primarily targets Intel GPUs (Gen9+), but partial support exists for:

  • AMD (amdgpu)
  • NVIDIA (nouveau)
  • Virtual GPUs (e.g., virtio-gpu in QEMU/KVM/AVD)

Hardware coverage may vary by test.

What's the difference between tests/, tools/, and benchmarks/?

  • tests/ – Automated functional tests, designed for CI and driver validation
  • tools/ – Debugging and inspection utilities (e.g., checking GPU state)
  • benchmarks/ – Performance-oriented microbenchmarks (e.g., memory or rendering speed)

Where do I report security issues?

Do not report vulnerabilities in public issues or mailing lists. Instead, contact a maintainer directly. See the MAINTAINERS file for contact information.

How do I submit a patch?

Use git send-email to send your patch to:

igt-dev@lists.freedesktop.org

Prefix your subject with PATCH i-g-t. You can track submissions at:

More details are in CONTRIBUTING.md.

If your question isn't answered here, feel free to ask on the igt-dev mailing list or open an issue on GitLab.