Description
gem_bad_length
Test minimal bo_create and batchbuffer exec.
gem_bad_reloc
Simulates SNA behaviour using negative self-relocations for STATE_BASE_ADDRESS command packets.
Subtests
negative-reloc
|
negative-reloc-lut
|
negative-reloc-blt
|
gem_basic
Subtests
bad-close
|
create-close
|
create-fd-close
|
gem_caching
Test snoop consistency when touching partial cachelines.
gem_close_race
Subtests
process-exit
|
gem-close-race
|
gem_concurrent_all
Test of pread/pwrite/mmap behavior when writing to active buffers.
Subtests
This test has over 100 subtests.
Run gem_concurrent_all --list-subtests
to list them.
gem_concurrent_blit
Test of pread/pwrite/mmap behavior when writing to active buffers.
Subtests
This test has over 100 subtests.
Run gem_concurrent_blit --list-subtests
to list them.
gem_cpu_reloc
Test the relocations through the CPU domain.
gem_cs_prefetch
Test the CS prefetch behaviour on batches.
gem_cs_tlb
Check whether we correctly invalidate the cs tlb.
gem_ctx_bad_destroy
Negative test cases for destroy contexts.
Subtests
double-destroy
|
invalid-ctx
|
invalid-default-ctx
|
invalid-pad
|
gem_ctx_bad_exec
Test that context cannot be submitted to unsupported rings.
gem_ctx_basic
Basic test for memory and refcount leaks.
gem_ctx_exec
Test basic context switch functionality.
Subtests
basic
|
eviction
|
reset-pin-leak
|
lrc-lite-restore
|
gem_ctx_param_basic
Basic test for context set/get param input validation.
Subtests
basic
|
basic-default
|
invalid-ctx-get
|
invalid-ctx-set
|
invalid-size-get
|
invalid-size-set
|
non-root-set
|
root-set
|
non-root-set-no-zeromap
|
root-set-no-zeromap-enabled
|
root-set-no-zeromap-disabled
|
invalid-param-get
|
invalid-param-set
|
gem_ctx_thrash
Fill the Gobal GTT with context objects and VMs
gem_double_irq_loop
Basic check for missed IRQs on blt ring.
gem_dummy_reloc_loop
Check ring<->cpu sync using a dummy reloc.
Subtests
render
|
bsd
|
blt
|
vebox
|
bsd-ring1
|
bsd-ring2
|
mixed
|
mixed_multi_fd
|
gem_eio
Test that specific ioctls report a wedged GPU (EIO).
gem_evict_alignment
Run a couple of big batches to force the unbind on misalignment code.
Subtests
minor-normal
|
major-normal
|
minor-interruptible
|
major-interruptible
|
minor-hang
|
major-hang
|
gem_evict_everything
Run a couple of big batches to force the eviction code.
Subtests
forked-normal
|
forked-interruptible
|
forked-swapping-normal
|
forked-swapping-interruptible
|
forked-multifd-normal
|
forked-multifd-interruptible
|
forked-swapping-multifd-normal
|
forked-swapping-multifd-interruptible
|
forked-mempressure-normal
|
forked-mempressure-interruptible
|
forked-swapping-mempressure-normal
|
forked-swapping-mempressure-interruptible
|
forked-multifd-mempressure-normal
|
forked-multifd-mempressure-interruptible
|
forked-swapping-multifd-mempressure-normal
|
forked-swapping-multifd-mempressure-interruptible
|
mlocked-normal
|
swapping-normal
|
minor-normal
|
major-normal
|
mlocked-interruptible
|
swapping-interruptible
|
minor-interruptible
|
major-interruptible
|
mlocked-hang
|
swapping-hang
|
minor-hang
|
major-hang
|
gem_exec_alignment
Exercises the basic execbuffer using object alignments
gem_exec_bad_domains
Test whether the kernel rejects relocations with non-gpu domains.
Subtests
cpu-domain
|
gtt-domain
|
conflicting-write-domain
|
double-write-domain
|
invalid-gpu-domain
|
gem_exec_big
Run a large nop batch to stress test the error capture code.
gem_exec_blt
Subtests
cold
|
normal
|
dumb-buf
|
cold-min
|
normal-min
|
dumb-buf-min
|
cold-max
|
normal-max
|
dumb-buf-max
|
gem_exec_faulting_reloc
Submit patches with relocations in memory that will fault.
gem_exec_lut_handle
Exercises the basic execbuffer using the handle LUT interface.
gem_exec_nop
Subtests
render
|
bsd
|
blt
|
vebox
|
render-min
|
bsd-min
|
blt-min
|
vebox-min
|
render-max
|
bsd-max
|
blt-max
|
vebox-max
|
gem_exec_params
Subtests
control
|
no-bsd
|
no-blt
|
no-vebox
|
invalid-ring
|
invalid-ring2
|
invalid-bsd-ring
|
invalid-bsd1-flag-on-render
|
invalid-bsd2-flag-on-render
|
invalid-bsd1-flag-on-blt
|
invalid-bsd2-flag-on-blt
|
invalid-bsd1-flag-on-vebox
|
invalid-bsd2-flag-on-vebox
|
rel-constants-invalid-ring
|
rel-constants-invalid-rel-gen5
|
rel-constants-invalid
|
sol-reset-invalid
|
sol-reset-not-gen7
|
secure-non-root
|
secure-non-master
|
invalid-flag
|
cliprects-invalid
|
rs-invalid-on-bsd-ring
|
rs-invalid-on-blt-ring
|
rs-invalid-on-vebox-ring
|
rs-invalid-gen
|
rsvd2-dirt
|
cliprects_ptr-dirt
|
DR1-dirt
|
DR4-dirt
|
gem_exec_parse
Subtests
basic-allowed
|
basic-rejected
|
registers
|
bitmasks
|
batch-without-end
|
cmd-crossing-page
|
oacontrol-tracking
|
chained-batch
|
gem_fenced_exec_thrash
Test execbuf fence accounting.
Subtests
2-spare-fences
|
no-spare-fences
|
no-spare-fences-busy
|
no-spare-fences-interruptible
|
no-spare-fences-busy-interruptible
|
too-many-fences
|
gem_fence_thrash
Subtests
bo-write-verify-none
|
bo-write-verify-x
|
bo-write-verify-y
|
bo-write-verify-threaded-none
|
bo-write-verify-threaded-x
|
bo-write-verify-threaded-y
|
bo-copy
|
gem_fence_upload
Subtests
performance
|
thread-contention
|
wc-contention
|
thread-performance-read
|
thread-performance-write
|
thread-performance-both
|
gem_flink_basic
Subtests
basic
|
double-flink
|
bad-flink
|
bad-open
|
flink-lifetime
|
gem_flink_race
Check for flink/open vs. gem close races.
gem_gtt_cpu_tlb
Check whether gtt tlbs for cpu access are correctly invalidated.
gem_hangcheck_forcewake
Provoke the hangcheck timer on an otherwise idle system.
gem_linear_blits
Test doing many blits with a working set larger than the aperture size.
Subtests
basic
|
normal
|
interruptible
|
gem_lut_handle
Exercises the basic execbuffer using the handle LUT interface.
gem_madvise
Checks that the kernel reports EFAULT when trying to use purged bo.
Subtests
dontneed-before-mmap
|
dontneed-after-mmap
|
dontneed-before-pwrite
|
dontneed-before-exec
|
gem_media_fill
Basic test for the media_fill() function, a very simple workload for the Media pipeline.
gem_mmap
Subtests
bad-object
|
basic
|
short-mmap
|
basic-small-bo
|
big-bo
|
huge-bo
|
swap-bo
|
gem_mmap_gtt
Subtests
basic
|
basic-short
|
basic-copy
|
basic-read
|
basic-write
|
basic-write-gtt
|
basic-read-write
|
basic-write-read
|
basic-read-write-distinct
|
basic-write-read-distinct
|
fault-concurrent
|
basic-read-no-prefault
|
basic-write-no-prefault
|
basic-write-gtt-no-prefault
|
basic-write-cpu-read-gtt
|
basic-small-bo
|
basic-small-bo-tiledX
|
basic-small-bo-tiledY
|
big-bo
|
big-bo-tiledX
|
big-bo-tiledY
|
huge-bo
|
huge-bo-tiledX
|
huge-bo-tiledY
|
basic-small-copy
|
basic-small-copy-XY
|
medium-copy
|
medium-copy-XY
|
big-copy
|
big-copy-XY
|
huge-copy
|
huge-copy-XY
|
gem_mmap_offset_exhaustion
Checks whether the kernel handles mmap offset exhaustion correctly.
gem_mmap_wc
Subtests
invalid-flags
|
close
|
copy
|
read
|
write
|
write-gtt
|
read-write
|
write-read
|
read-write-distinct
|
write-read-distinct
|
fault-concurrent
|
read-no-prefault
|
write-no-prefault
|
write-gtt-no-prefault
|
write-cpu-read-wc
|
write-cpu-read-wc-unflushed
|
write-gtt-read-wc
|
set-cache-level
|
gem_multi_bsd_sync_loop
Basic check of ring<->ring sync using a dummy reloc.
gem_partial_pwrite_pread
Test pwrite/pread consistency when touching partial cachelines.
Subtests
reads
|
write
|
writes-after-reads
|
reads-uncached
|
write-uncached
|
writes-after-reads-uncached
|
reads-snoop
|
write-snoop
|
writes-after-reads-snoop
|
reads-display
|
write-display
|
writes-after-reads-display
|
gem_persistent_relocs
Test persistent relocations as used by uxa/libva.
Subtests
normal
|
interruptible
|
forked
|
forked-interruptible
|
forked-faulting-reloc
|
forked-interruptible-faulting-reloc
|
forked-thrashing
|
forked-interruptible-thrashing
|
forked-faulting-reloc-thrashing
|
forked-interruptible-faulting-reloc-thrashing
|
forked-thrash-inactive
|
forked-interruptible-thrash-inactive
|
forked-faulting-reloc-thrash-inactive
|
forked-interruptible-faulting-reloc-thrash-inactive
|
gem_pin
Exercises pinning of small buffer objects.
gem_pipe_control_store_loop
Test (TLB-)Coherency of pipe_control QW writes.
Subtests
fresh-buffer
|
reused-buffer
|
gem_ppgtt
Subtests
blt-vs-render-ctx0
|
blt-vs-render-ctxN
|
flink-and-close-vma-leak
|
flink-and-exit-vma-leak
|
gem_pread
Subtests
basic
|
uncached
|
snoop
|
display
|
gem_pread_after_blit
Test pread behavior when getting values out of just-drawn-to buffers.
Subtests
default-normal
|
default-interruptible
|
default-hang
|
uncached-normal
|
uncached-interruptible
|
uncached-hang
|
snooped-normal
|
snooped-interruptible
|
snooped-hang
|
display-normal
|
display-interruptible
|
display-hang
|
gem_pwrite
Subtests
basic
|
uncached
|
snoop
|
display
|
big-cpu
|
big-gtt
|
huge-cpu
|
huge-gtt
|
gem_pwrite_pread
Subtests
uncached-copy-correctness
|
uncached-copy-performance
|
uncached-pwrite-blt-gtt_mmap-correctness
|
uncached-pwrite-blt-gtt_mmap-performance
|
snooped-copy-correctness
|
snooped-copy-performance
|
snooped-pwrite-blt-cpu_mmap-correctness
|
snooped-pwrite-blt-cpu_mmap-performance
|
display-copy-correctness
|
display-copy-performance
|
display-pwrite-blt-gtt_mmap-correctness
|
display-pwrite-blt-gtt_mmap-performance
|
gem_pwrite_snooped
pwrite to a snooped bo then make it uncached and check that the GPU sees the data.
gem_read_read_speed
Test speed of concurrent reads between engines.
Subtests
read-read-1x1
|
read-read-128x128
|
read-read-256x256
|
read-read-512x512
|
read-read-1024x1024
|
read-read-2048x2048
|
read-read-4096x4096
|
read-read-8192x8192
|
gem_readwrite
Subtests
new-obj
|
beyond-EOB
|
read-write
|
read-bad-handle
|
write-bad-handle
|
gem_reg_read
Subtests
bad-register
|
timestamp-moving
|
timestamp-monotonic
|
gem_reloc_overflow
Check that kernel relocation overflows are caught.
Subtests
invalid-address
|
single-overflow
|
batch-start-unaligned
|
batch-end-unaligned
|
wrapped-overflow
|
source-offset-page-stradle-gen8-reloc-cpu
|
source-offset-end-gen8-reloc-cpu
|
source-offset-overflow-gen8-reloc-cpu
|
source-offset-end-reloc-cpu
|
source-offset-big-reloc-cpu
|
source-offset-negative-reloc-cpu
|
source-offset-unaligned-reloc-cpu
|
source-offset-page-stradle-gen8-reloc-gtt
|
source-offset-end-gen8-reloc-gtt
|
source-offset-overflow-gen8-reloc-gtt
|
source-offset-end-reloc-gtt
|
source-offset-big-reloc-gtt
|
source-offset-negative-reloc-gtt
|
source-offset-unaligned-reloc-gtt
|
buffercount-overflow
|
gem_reloc_vs_gpu
Test kernel relocations vs. gpu races.
Subtests
normal
|
faulting-reloc
|
interruptible
|
interruptible-hang
|
faulting-reloc-interruptible
|
faulting-reloc-interruptible-hang
|
forked
|
forked-interruptible
|
forked-faulting-reloc
|
forked-interruptible-faulting-reloc
|
forked-thrashing
|
forked-interruptible-thrashing
|
forked-faulting-reloc-thrashing
|
forked-interruptible-faulting-reloc-thrashing
|
forked-thrash-inactive
|
forked-interruptible-thrash-inactive
|
forked-faulting-reloc-thrash-inactive
|
forked-interruptible-faulting-reloc-thrash-inactive
|
forked-hang
|
forked-interruptible-hang
|
forked-faulting-reloc-hang
|
forked-interruptible-faulting-reloc-hang
|
forked-thrashing-hang
|
forked-interruptible-thrashing-hang
|
forked-faulting-reloc-thrashing-hang
|
forked-interruptible-faulting-reloc-thrashing-hang
|
forked-thrash-inactive-hang
|
forked-interruptible-thrash-inactive-hang
|
forked-faulting-reloc-thrash-inactive-hang
|
forked-interruptible-faulting-reloc-thrash-inactive-hang
|
gem_render_copy
Basic test for the render_copy() function.
gem_render_copy_redux
Advanced test for the render_copy() function.
Subtests
normal
|
interruptible
|
flink
|
flink-interruptible
|
gem_render_linear_blits
Subtests
basic
|
apperture-thrash
|
swap-thrash
|
gem_render_tiled_blits
Subtests
basic
|
apperture-thrash
|
swap-thrash
|
gem_request_retire
Collection of tests targeting request retirement code paths.
gem_reset_stats
Subtests
params
|
params-ctx-render
|
reset-stats-render
|
reset-stats-ctx-render
|
ban-render
|
ban-ctx-render
|
reset-count-render
|
reset-count-ctx-render
|
unrelated-ctx-render
|
close-pending-render
|
close-pending-ctx-render
|
close-pending-fork-render
|
close-pending-fork-reverse-render
|
defer-hangcheck-render
|
params-ctx-blt
|
reset-stats-blt
|
reset-stats-ctx-blt
|
ban-blt
|
ban-ctx-blt
|
reset-count-blt
|
reset-count-ctx-blt
|
unrelated-ctx-blt
|
close-pending-blt
|
close-pending-ctx-blt
|
close-pending-fork-blt
|
close-pending-fork-reverse-blt
|
defer-hangcheck-blt
|
params-ctx-bsd
|
reset-stats-bsd
|
reset-stats-ctx-bsd
|
ban-bsd
|
ban-ctx-bsd
|
reset-count-bsd
|
reset-count-ctx-bsd
|
unrelated-ctx-bsd
|
close-pending-bsd
|
close-pending-ctx-bsd
|
close-pending-fork-bsd
|
close-pending-fork-reverse-bsd
|
defer-hangcheck-bsd
|
params-ctx-vebox
|
reset-stats-vebox
|
reset-stats-ctx-vebox
|
ban-vebox
|
ban-ctx-vebox
|
reset-count-vebox
|
reset-count-ctx-vebox
|
unrelated-ctx-vebox
|
close-pending-vebox
|
close-pending-ctx-vebox
|
close-pending-fork-vebox
|
close-pending-fork-reverse-vebox
|
defer-hangcheck-vebox
|
gem_ringfill
Subtests
blitter
|
render
|
blitter-interruptible
|
render-interruptible
|
blitter-forked-1
|
render-forked-1
|
blitter-forked-4
|
render-forked-4
|
gem_ring_sync_copy
Ensure inter-ring dependencies are respected.
Subtests
sync-render-blitter-write-read
|
sync-render-blitter-read-write
|
sync-render-blitter-write-write
|
sync-blitter-render-write-read
|
sync-blitter-render-read-write
|
sync-blitter-render-write-write
|
gem_ring_sync_loop
Basic check of ring<->ring sync using a dummy reloc.
gem_seqno_wrap
Runs blitcopy -> rendercopy with multiple buffers over wrap boundary.
gem_set_tiling_vs_blt
Check for proper synchronization of tiling changes vs. tiled gpu access.
Subtests
untiled-to-tiled
|
tiled-to-untiled
|
tiled-to-tiled
|
gem_set_tiling_vs_gtt
Check set_tiling vs gtt mmap coherency.
gem_set_tiling_vs_pwrite
Check set_tiling vs pwrite coherency.
gem_storedw_batches_loop
Subtests
normal
|
secure-dispatch
|
cached-mapping
|
uncached-mapping
|
gem_storedw_loop
Basic CS check using MI_STORE_DATA_IMM.
Subtests
basic-bsd
|
long-bsd
|
basic-render
|
long-render
|
basic-blt
|
long-blt
|
basic-vebox
|
long-vebox
|
gem_streaming_writes
Test of streaming writes into active GPU sources
Subtests
cpu-sync
|
gtt-sync
|
wc-sync
|
cpu
|
gtt
|
wc
|
batch-cpu
|
batch-gtt
|
batch-wc
|
batch-reverse-cpu
|
batch-reverse-gtt
|
batch-reverse-wc
|
gem_threaded_access_tiled
Check parallel access to tiled memory.
gem_tiled_blits
Test doing many tiled blits, with a working set larger than the aperture size.
Subtests
basic
|
normal
|
interruptible
|
gem_tiled_partial_pwrite_pread
Test pwrite/pread consistency when touching partial cachelines.
Subtests
reads
|
writes
|
writes-after-reads
|
gem_tiled_pread_basic
Test pread behavior on tiled objects with respect to the reported swizzling value.
gem_tiled_pread_pwrite
Test swizzling by testing pwrite does the inverse of pread.
gem_tiled_swapping
Exercise swizzle code for swapping.
gem_tiled_wb
This is a test of write-combining mmap's behavior on tiled objects with respect to the reported swizzling value.
gem_tiling_max_stride
Check that max fence stride works.
gem_unfence_active_buffers
Check for use-after-free in the fence stealing code.
gem_unref_active_buffers
Test unreferencing of active buffers.
gem_userptr_blits
Subtests
input-checking
|
usage-restrictions
|
invalid-null-pointer
|
invalid-gtt-mapping
|
forked-access
|
forbidden-operations
|
create-destroy-unsync
|
unsync-overlap
|
unsync-unmap
|
unsync-unmap-cycles
|
unsync-unmap-after-close
|
coherency-unsync
|
dmabuf-unsync
|
forked-unsync-normal
|
forked-unsync-interruptible
|
forked-unsync-swapping-normal
|
forked-unsync-swapping-interruptible
|
forked-unsync-multifd-normal
|
forked-unsync-multifd-interruptible
|
forked-unsync-swapping-multifd-normal
|
forked-unsync-swapping-multifd-interruptible
|
forked-unsync-mempressure-normal
|
forked-unsync-mempressure-interruptible
|
forked-unsync-swapping-mempressure-normal
|
forked-unsync-swapping-mempressure-interruptible
|
forked-unsync-multifd-mempressure-normal
|
forked-unsync-multifd-mempressure-interruptible
|
forked-unsync-swapping-multifd-mempressure-normal
|
forked-unsync-swapping-multifd-mempressure-interruptible
|
mlocked-unsync-normal
|
swapping-unsync-normal
|
minor-unsync-normal
|
major-unsync-normal
|
mlocked-unsync-interruptible
|
swapping-unsync-interruptible
|
minor-unsync-interruptible
|
major-unsync-interruptible
|
process-exit
|
process-exit-gtt
|
process-exit-busy
|
process-exit-gtt-busy
|
create-destroy-sync
|
sync-overlap
|
sync-unmap
|
sync-unmap-cycles
|
sync-unmap-after-close
|
stress-mm
|
stress-mm-invalidate-close
|
stress-mm-invalidate-close-overlap
|
coherency-sync
|
dmabuf-sync
|
forked-sync-normal
|
forked-sync-interruptible
|
forked-sync-swapping-normal
|
forked-sync-swapping-interruptible
|
forked-sync-multifd-normal
|
forked-sync-multifd-interruptible
|
forked-sync-swapping-multifd-normal
|
forked-sync-swapping-multifd-interruptible
|
forked-sync-mempressure-normal
|
forked-sync-mempressure-interruptible
|
forked-sync-swapping-mempressure-normal
|
forked-sync-swapping-mempressure-interruptible
|
forked-sync-multifd-mempressure-normal
|
forked-sync-multifd-mempressure-interruptible
|
forked-sync-swapping-multifd-mempressure-normal
|
forked-sync-swapping-multifd-mempressure-interruptible
|
mlocked-normal-sync
|
swapping-normal-sync
|
minor-normal-sync
|
major-normal-sync
|
mlocked-sync-interruptible
|
swapping-sync-interruptible
|
minor-sync-interruptible
|
major-sync-interruptible
|
access-control
|
gem_wait
Subtests
render_timeout
|
invalid-flags
|
invalid-buf
|
gem_workarounds
Subtests
read
|
reset
|
suspend-resume
|
gem_write_read_ring_switch
Check read/write syncpoints when switching rings.
Subtests
blt2render
|
blt2bsd
|
blt2vebox
|
blt2render-interruptible
|
blt2bsd-interruptible
|
blt2vebox-interruptible
|