Using the automated asset python scripts requires that Docker be installed.
$ sk asset upload mesa_intel_driver_linux_22
See below for steps on just building the driver.
This asset is mesa_intel_driver_linux_22
.
There is also mesa_intel_driver_linux
, which contains pre-version 22 copies of the Mesa drivers, that's because in v22 Mesa dropped support for “legacy” drivers which covers many of our existing Intel jobs.
It is easiest to just use the Dockerfile provided:
docker build -t mesa-driver-builder:latest ./mesa-driver-builder/ docker run --volume /tmp/out:/OUT --env MESA_VERSION=22.1.3 mesa-driver-builder:latest
You may change /tmp/out
to be the desired output directory and 22.1.3
to be the desired version of the mesa driver.
Finally, use /tmp/out
as the input directory to the upload script.
Testing both the Vulkan and GLX drivers is done via setting environment variables.
For example, if the above is run and the build drivers are in /tmp/out/
then they can be tested via:
cd /tmp/out LIBGL_DRIVERS_PATH=`pwd` glxinfo | grep -i Mesa VK_ICD_FILENAMES="./intel_icd.x86_64.json" vulkaninfo | grep Mesa
N.B. Make sure to pick a version of Mesa that your desktop is not currently using and then run both commands above both with and w/o the environment variables set to confirm that the drivers are really being picked up. For example:
With the 22.1.3 drivers:
chrome-bot@skia-e-linux-600:~/mesa/foo$ VK_ICD_FILENAMES="./intel_icd.x86_64.json" vulkaninfo | grep Mesa VK_LAYER_MESA_overlay (Mesa Overlay layer) Vulkan version 1.3.211, layer version 1: driverName = Intel open-source Mesa driver driverInfo = Mesa 22.1.3 driverName = Intel open-source Mesa driver driverInfo = Mesa 22.1.3
Compared to the installed 22.0.5 drivers:
chrome-bot@skia-e-linux-600:~/mesa/foo$ vulkaninfo | grep Mesa WARNING: lavapipe is not a conformant vulkan implementation, testing use only. VK_LAYER_MESA_overlay (Mesa Overlay layer) Vulkan version 1.3.211, layer version 1: WARNING: lavapipe is not a conformant vulkan implementation, testing use only. driverName = Intel open-source Mesa driver driverInfo = Mesa 22.0.5 driverName = Intel open-source Mesa driver driverInfo = Mesa 22.0.5 driverInfo = Mesa 22.0.5 (LLVM 14.0.4) driverInfo = Mesa 22.0.5 (LLVM 14.0.4)