summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2020-05-15 11:22:37 -0700
committerEric Engestrom <eric@engestrom.ch>2020-07-08 19:31:15 +0200
commit73a0d3e75e128e54dc7b45b7a396b8c14310f9bc (patch)
tree811a719bbb80b37c654ea39f6166e8d1d91ddb83
parent0ea53c5aa5f22db3715d4c29d3d6b194438a6664 (diff)
ci: Switch cheza (freedreno a630) testing to baremetal.
Now that we have scripts in place to do baremetal testing of cheza, switch it over. As of this writing, we have 5 chezas for baremetal and 4 for the old docker CI setup (just 2 fewer than we originally had before this work, since some had had filesystem failures and I switched those first), and once we are sure of this we can backport to stable branch CI and move the rest of them to baremetal. I've run a lot of jobs through the baremetal scripts as I worked on sorting out vulkan CTS stability, so I feel good about the stability of the GLES CTS here. The options job is now split out to separate jobs, as we don't currently have a way to stack multiple sets deqp runs with different env vars in a single baremetal run, and just chaining cros_servo.sh invocations runs into a lack of cleanup of the serial-watching scripts which we rely on container exit sorting out for us. This means a little less than 2x the artifacts downloads we had before for a630 and a few more container instantiations. Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com> (cherry picked from commit 6f4fc4ff71524d55f6b481e4580c377d3c5f3b66) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
-rw-r--r--.gitlab-ci.yml62
1 files changed, 40 insertions, 22 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 143dde9a826..9e5cbfed0bc 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -792,21 +792,19 @@ virgl-gles31:
arm64_a630_gles2:
extends:
- - .deqp-test-gl
- - .use-arm_test
- - .freedreno-rules
+ - arm64_a306_gles2
variables:
- DEQP_VER: gles2
+ BM_KERNEL: /lava-files/cheza-kernel
+ BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt
DEQP_SKIPS: deqp-freedreno-a630-skips.txt
NIR_VALIDATE: 0
- DEQP_PARALLEL: 4
- FLAKES_CHANNEL: "#freedreno-ci"
DEQP_EXPECTED_RENDERER: FD630
+ DEQP_NO_SAVE_RESULTS: ""
tags:
- - mesa-cheza
- dependencies:
- - meson-arm64
+ - google-freedreno-cheza
+ script:
+ - .gitlab-ci/bare-metal/cros-servo.sh
arm64_a630_gles31:
extends: arm64_a630_gles2
@@ -818,28 +816,48 @@ arm64_a630_gles3:
variables:
DEQP_VER: gles3
-arm64_a630_gles31_options:
- extends: arm64_a630_gles2
+# We almost always manage to lower UBOs back to constant uploads in
+# the test suite, so get a little testing for it here.
+arm64_a630_noubo:
+ extends: arm64_a630_gles31
variables:
DEQP_VER: gles31
+ IR3_SHADER_DEBUG: nouboopt
+ DEQP_CASELIST_FILTER: "functional.*ubo"
+ DEQP_EXPECTED_FAILS: deqp-freedreno-a630-noubo-fails.txt
+
+# The driver does some guessing as to whether to render using gmem
+# or bypass, and some GLES3.1 features interact with either one.
+# Do a little testing with gmem and bypass forced.
+arm64_a630_bypass:
+ extends: arm64_a630_gles31
+ variables:
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 5
- script:
- # We almost always manage to lower UBOs back to constant uploads in
- # the test suite, so get a little testing for it here.
- - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" DEQP_EXPECTED_FAILS=deqp-freedreno-a630-noubo-fails.txt CI_NODE_INDEX= ./install/deqp-runner.sh
- # The driver does some guessing as to whether to render using gmem
- # or bypass, and some GLES3.1 features interact with either one.
- # Do a little testing with gmem and bypass forced.
- - DEQP_RUN_SUFFIX=-bypass FD_MESA_DEBUG=nogmem DEQP_EXPECTED_FAILS=deqp-freedreno-a630-bypass-fails.txt ./install/deqp-runner.sh
- - DEQP_RUN_SUFFIX=-gmem FD_MESA_DEBUG=nobypass ./install/deqp-runner.sh
- # Check that we don't get obvious nir validation failures (though it's too expensive to run for the full CTS)
- - DEQP_RUN_SUFFIX=-validate NIR_VALIDATE=1 ./install/deqp-runner.sh
+ FD_MESA_DEBUG: nogmem
+ DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt
+
+# Along with checking gmem path, check that we don't get obvious nir
+# validation failures (though it's too expensive to have it on for the
+# full CTS)
+arm64_a630_gmem:
+ extends: arm64_a630_gles31
+ variables:
+ CI_NODE_INDEX: 1
+ CI_NODE_TOTAL: 5
+ FD_MESA_DEBUG: nobypass
+ NIR_VALIDATE: 1
.baremetal-test:
extends:
- .ci-run-policy
stage: test
+ artifacts:
+ when: always
+ name: "mesa_${CI_JOB_NAME}"
+ paths:
+ - results/
+ - serial*.txt
arm64_a306_gles2:
extends: