- local: 'src/intel/ci/gitlab-ci.yml'
- local: 'src/microsoft/ci/gitlab-ci.yml'
- local: 'src/panfrost/ci/gitlab-ci.yml'
+ - local: 'src/virtio/ci/gitlab-ci.yml'
stages:
- sanity
NIR_DEBUG="novalidate" \
LIBGL_ALWAYS_SOFTWARE=${CROSVM_LIBGL_ALWAYS_SOFTWARE} \
GALLIUM_DRIVER=${CROSVM_GALLIUM_DRIVER} \
+VK_ICD_FILENAMES=$CI_PROJECT_DIR/install/share/vulkan/icd.d/${CROSVM_VK_DRIVER}_icd.x86_64.json \
crosvm run \
- --gpu "${CROSVM_GPU_ARGS}" -m 4096 -c 2 --disable-sandbox \
+ --gpu "${CROSVM_GPU_ARGS}" -m "${CROSVM_MEMORY:-4096}" -c 2 --disable-sandbox \
--shared-dir /:my_root:type=fs:writeback=true:timeout=60:cache=always \
--host_ip "192.168.30.1" --netmask "255.255.255.0" --mac "AA:BB:CC:00:00:12" \
-s $VM_SOCKET \
*virgl_file_list
when: manual
+.venus-rules:
+ stage: layered-backends
+ rules:
+ - !reference [.lavapipe-rules, rules]
+ - changes: &venus_file_list
+ - src/virtio/**/*
+ when: on_success
+ - when: never
+
.radeonsi-rules:
stage: amd
rules:
--- /dev/null
+[[deqp]]
+deqp = "/install/crosvm-runner.sh"
+caselists = [ "/deqp/mustpass/vk-master.txt" ]
+deqp_args = [ "/deqp/external/vulkancts/modules/vulkan/deqp-vk" ]
+timeout = 30.0 # Starting lots of Crosvm instances simultaneously can take some time
+renderer_check = "Virtio-GPU Venus.*llvmpipe"
--- /dev/null
+.venus-lavapipe-test:
+ extends:
+ - .test-vk
+ - .venus-rules
+ variables:
+ VK_DRIVER: virtio
+ CROSVM_GALLIUM_DRIVER: "llvmpipe"
+ CROSVM_VK_DRIVER: "lvp"
+ CROSVM_GPU_ARGS: "vulkan=true,gles=false,backend=virglrenderer,egl=true,surfaceless=true"
+
+venus-lavapipe:
+ extends:
+ - .deqp-test-vk
+ - .venus-lavapipe-test
+ variables:
+ DEQP_FRACTION: 15
+ DEQP_SUITE: venus
+ GPU_VERSION: venus
+ LP_NUM_THREADS: 1 # There will be FDO_CI_CONCURRENT Crosvm processes, so each should use a single thread
+ FDO_CI_CONCURRENT: 32 # Seems to be the fastest value, more gets actually slower
+ CROSVM_MEMORY: 3072
+ FLAKES_CHANNEL: "#virgl-ci"
+ tags:
+ - mesa-swrast
--- /dev/null
+# Failures likely due to lavapipe (i.e. the intersection of observed failures and lvp-fails.txt)
+dEQP-VK.glsl.crash_test.divbyzero_comp,Crash
+
+# Full Venus list
+dEQP-VK.multiview.queries.15_15_15_15,Fail
+dEQP-VK.multiview.queries.15,Fail
+dEQP-VK.multiview.queries.5_10_5_10,Fail
+dEQP-VK.multiview.renderpass2.queries.15_15_15_15,Fail
+dEQP-VK.multiview.renderpass2.queries.15,Fail
+dEQP-VK.multiview.renderpass2.queries.5_10_5_10,Fail
+dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.enable_raster,Fail
+dEQP-VK.pipeline.extended_dynamic_state.before_draw.enable_raster,Fail
+dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.enable_raster,Fail
+dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.enable_raster,Fail
+dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.enable_raster,Fail
+dEQP-VK.pipeline.timestamp.calibrated.host_domain_test,Fail
\ No newline at end of file
--- /dev/null
+dEQP-VK.synchronization.*16384
+dEQP-VK.synchronization.*262144
+dEQP-VK.spirv_assembly.instruction.graphics.64bit_compare.double.frag_opfordnotequal_nonan_vector
+dEQP-VK.robustness.buffer_access.fragment.vec4_copy.r32_uint.oob_storage_read.range_4_bytes
+dEQP-VK.robustness.buffer_access.fragment.vec4_copy.r32_uint.oob_storage_write.range_32_bytes
+dEQP-VK.robustness.buffer_access.fragment.texel_copy.r32g32b32a32_sfloat.oob_storage_write.range_3_texels
+dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_uvec4
\ No newline at end of file
--- /dev/null
+# These take so long that cause caselist batches to timeout
+dEQP-VK.pipeline.monolithic.*
\ No newline at end of file