From: Eric Anholt Date: Fri, 15 May 2020 18:22:37 +0000 (-0700) Subject: ci: Switch cheza (freedreno a630) testing to baremetal. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6f4fc4ff71524d55f6b481e4580c377d3c5f3b66;p=mesa.git 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 Part-of: --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 621c15b3be6..c5b2e4eab67 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -812,21 +812,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 @@ -838,28 +836,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: