[PATCH i-g-t v3 21/25] tests/intel: Add missing documentation fields in i915_selftest

Kamil Konieczny kamil.konieczny at linux.intel.com
Tue Mar 12 14:28:04 UTC 2024


Hi Katarzyna,
On 2024-03-12 at 14:14:15 +0000, Katarzyna Piecielska wrote:
> Add subcategories, functionalities for all selftests in i915_selftest.
> Change functionality for live at gem - s/command submission/execbuf/.
> 
> v2: Make sure Sub-category and Functionality fields are not duplicated.
> 
> Signed-off-by: Katarzyna Piecielska <katarzyna.piecielska at intel.com>
> Cc: Kamil Konieczny <kamil.konieczny at linux.intel.com>
> Cc: Mauro Carvalho Chehab <mauro.chehab at linux.intel.com>
> Cc: Chris Wilson <chris.p.wilson at intel.com>
> Acked-by: Himanshu Girotra <himanshu.girotra at intel.com>
> ---
>  tests/intel/i915_selftest.c | 381 +++++++++++++++++++-----------------
>  1 file changed, 206 insertions(+), 175 deletions(-)
> 
> diff --git a/tests/intel/i915_selftest.c b/tests/intel/i915_selftest.c
> index 2c5f6bce2..9e254b33c 100644
> --- a/tests/intel/i915_selftest.c
> +++ b/tests/intel/i915_selftest.c
> @@ -29,165 +29,171 @@
>   *
>   * SUBTEST: live
>   * Feature: gem_core
> + * Sub-category: Selftest
> + * Category: Selftest

Here it has same Category and Sub-category, it could collide
in other tools. What about:

 * Category: Kernel Driver Selftest

Regards,
Kamil
 
> + * Functionality: live selftest
>   * Run type: BAT
>   *
>   * SUBTEST: live at active
>   * Category: Selftest
>   * Functionality: semaphore
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Synchronization
>   *
>   * SUBTEST: live at blt
>   * Category: Selftest
>   * Description: Blitter validation
>   * Functionality: command streamer
> - * Sub-category: i915 / HW
> - * Test category: GEM_Legacy
> + * Test category: i915 / HW
> + * Sub-category: Blitter
>   *
>   * SUBTEST: live at client
>   * Category: Selftest
>   * Description: Internal API over blitter
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: blitter api
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: live at coherency
>   * Category: Selftest
>   * Description: Cache management
> - * Functionality: memory management
> - * Sub-category: i915 / HW
> - * Test category: GEM_Legacy
> + * Functionality: cache
> + * Test category: i915 / HW
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at debugger
>   * Category: Selftest
>   * Functionality: device management
> - * Sub-category: debugger
> - * Test category: GEM_Legacy
> + * Test category: debugger
> + * Sub-category: Debugging
>   *
>   * SUBTEST: live at display
>   * Category: Selftest
>   * Functionality: display sanity
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Display
>   *
>   * SUBTEST: live at dmabuf
>   * Category: Selftest
>   * Functionality: buffer management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at evict
>   * Category: Selftest
>   * Functionality: GTT eviction
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at execlists
>   * Category: Selftest
>   * Description: command submission backend
> - * Functionality: command submission
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: execlists
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at gem
>   * Category: Selftest
> - * Functionality: command submission
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: execbuf
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at gem_contexts
>   * Category: Selftest
>   * Description: User isolation and execution at the context level
> - * Functionality: context management
> - * Sub-category: i915 / HW
> + * Functionality: context
> + * Sub-category: CMD submission
>   * Test category: GEM_Legacy
> + * Test category: i915 / HW
>   *
>   * SUBTEST: live at gem_execbuf
>   * Category: Selftest
>   * Description: command submission support
> - * Functionality: command submission
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: execbuf
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at gt_ccs_mode
>   * Category: Selftest
>   * Description: Multi-ccs internal validation
>   * Functionality: multii-ccs
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at gt_contexts
>   * Category: Selftest
>   * Description: HW isolation and HW context validation
> - * Functionality: context management
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Functionality: context
> + * Sub-category: CMD submission
> + * Test category: HW
>   *
>   * SUBTEST: live at gt_engines
>   * Category: Selftest
>   * Description: command submission topology validation
> - * Functionality: command submission
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: command submission topology
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at gt_gtt
>   * Category: Selftest
>   * Description: Validation of virtual address management and execution
> - * Functionality: memory management
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Functionality: gtt
> + * Test category: HW
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at gt_heartbeat
>   * Category: Selftest
>   * Description: Stall detection interface validation
> - * Functionality: reset
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: heartbeat
> + * Test category: i915
> + * Sub-category: Reset
>   *
>   * SUBTEST: live at gt_lrc
>   * Category: Selftest
>   * Description: HW isolation and HW context validation
> - * Functionality: context management
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Functionality: context
> + * Sub-category: CMD submission
> + * Test category: HW
>   *
>   * SUBTEST: live at gt_mocs
>   * Category: Selftest
>   * Description: Verification of mocs registers
> - * Functionality: mocs
> - * Sub-category: i915 / HW
> - * Test category: GEM_Legacy
> + * Functionality: mocs registers
> + * Test category: i915 / HW
> + * Sub-category: Mocs
>   *
>   * SUBTEST: live at gt_pm
>   * Category: Selftest
>   * Description: Basic i915 driver module selftests
> - * Feature: rps, rc6
> - * Test category: rps, rc6
> + * Functionality: rps, rc6
> + * Sub-category: Power management
>   *
>   * SUBTEST: live at gt_timelines
>   * Category: Selftest
>   * Description: semaphore tracking
>   * Functionality: semaphore
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Synchronization
>   *
>   * SUBTEST: live at gt_tlb
>   * Category: Selftest
>   * Test category: Memory Management
> + * Sub-category: Memory management
> + * Functionality: tlb
>   *
>   * SUBTEST: live at gtt
>   * Category: Selftest
>   * Description: Virtual address management interface validation
> - * Functionality: memory management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: virtual address
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at gtt_l4wa
>   * Category: Selftest
>   * Description: Check the L4WA is enabled when it was required
> - * Functionality: workarounds
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: L4WA
> + * Test category: i915
> + * Sub-category: Workarounds
>   *
>   * SUBTEST: live at guc
>   * Category: Selftest
> @@ -220,313 +226,338 @@
>   * SUBTEST: live at hangcheck
>   * Category: Selftest
>   * Description: reset handling after stall detection
> - * Functionality: reset
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: hangcheck
> + * Test category: i915
> + * Sub-category: Reset
>   *
>   * SUBTEST: live at hugepages
>   * Category: Selftest
>   * Description: Large page support validation
> - * Functionality: memory management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: large page
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at late_gt_pm
>   * Category: Selftest
>   * Feature: rc6
> - * Functionality: Basic i915 driver module selftests
> - * Test category: rc6
> + * Description: Basic i915 driver module selftests
> + * Functionality: rc6
> + * Sub-category: Power management
>   *
>   * SUBTEST: live at lmem
>   * Category: Selftest
> + * Feature: local_memory
> + * Description: Basic i915 driver module selftests
> + * Functionality: local memory
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at memory_region
>   * Category: Selftest
>   * Description: memory topology validation and migration checks
> - * Functionality: memory management
> - * Sub-category: i915 / HW
> - * Test category: GEM_Legacy
> + * Functionality: memory topology
> + * Test category: i915 / HW
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at memory_region_cross_tile
>   * Category: Selftest
> - * Functionality: Multi-tile memory topology validation
> - * Test category: MultiTile
> + * Description: Multi-tile memory topology validation
> + * Functionality: memory topology
> + * Sub-category: MultiTile
>   *
>   * SUBTEST: live at mman
>   * Category: Selftest
>   * Description: memory management validation
> - * Functionality: memory management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: mapping
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at obj_lock
>   * Category: Selftest
>   * Description: Validation of per-object locking patterns
> - * Functionality: per-object lockling
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: per-object locking
> + * Test category: i915
> + * Sub-category: Core
>   *
>   * SUBTEST: live at objects
>   * Category: Selftest
>   * Description: User object allocation and isolation checks
>   * Functionality: buffer management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Test category: i915
> + * Sub-category: Core
>   *
>   * SUBTEST: live at perf
>   * Category: Selftest
>   * Feature: i915 perf selftests
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   *
>   * SUBTEST: live at remote_tiles
>   * Category: Selftest
> - * Functionality: Tile meta data validation
> - * Test category: MultiTile
> + * Description: Tile meta data validation
> + * Functionality: meta data
> + * Sub-category: MultiTile
>   *
>   * SUBTEST: live at requests
>   * Category: Selftest
>   * Description: Validation of internal i915 command submission interface
> - * Functionality: command submission
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: command submission interface
> + * Test category: i915
> + * Sub-category: CMD submission
>   *
>   * SUBTEST: live at reset
>   * Category: Selftest
>   * Description: engine/GT resets
> - * Functionality: reset
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Functionality: engine/GT reset
> + * Test category: HW
> + * Sub-category: Reset
>   *
>   * SUBTEST: live at sanitycheck
>   * Category: Selftest
>   * Description: Checks the selftest infrastructure itself
> - * Functionality: selftests
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: selftest
> + * Test category: i915
> + * Sub-category: Core
>   *
>   * SUBTEST: live at scheduler
>   * Category: Selftest
> - * Test category: Cmd Submission
> + * Sub-category: CMD Submission
> + * Functionality: scheduler
>   *
>   * SUBTEST: live at semaphores
>   * Category: Selftest
>   * Description: GuC semaphore management
>   * Functionality: semaphore
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Test category: HW
> + * Sub-category: Synchronization
>   *
>   * SUBTEST: live at slpc
>   * Category: Selftest
>   * Feature: slpc / pm_rps
> - * Functionality: Basic i915 driver module selftests
> - * Test category: slpc / pm_rps
> + * Description: Basic i915 driver module selftests
> + * Functionality: slpc
> + * Sub-category: Power management
>   *
>   * SUBTEST: live at uncore
>   * Category: Selftest
>   * Description: Basic i915 driver module selftests
>   * Feature: forcewake
> - * Test category: forcewake
> + * Functionality: forcewake
> + * Sub-category: Power management
>   *
>   * SUBTEST: live at vma
>   * Category: Selftest
>   * Description: Per-object virtual address management
> - * Functionality: memory management
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: vma
> + * Test category: i915
> + * Sub-category: Memory management
>   *
>   * SUBTEST: live at win_blt_copy
>   * Category: Selftest
>   * Description: Validation of migration interface
>   * Functionality: migration interface
> - * Sub-category: i915 / HW
> - * Test category: GEM_Legacy
> + * Test category: i915 / HW
> + * Sub-category: Blitter
>   *
>   * SUBTEST: live at workarounds
>   * Category: Selftest
>   * Description: Check workarounds persist or are reapplied after resets and other power management events
> - * Functionality: workarounds
> - * Sub-category: HW
> - * Test category: GEM_Legacy
> + * Functionality: driver workarounds
> + * Test category: HW
> + * Sub-category: Workarounds
>   *
>   * SUBTEST: mock
> + * Category: Selftest
>   * Feature: gem_core
> + * Sub-category: Selftest
> + * Functionality: mock selftest
>   * Run type: FULL
>   *
>   * SUBTEST: mock at buddy
>   * Category: Selftest
>   * Description: Buddy allocation
> - * Functionality: memory management
> - * Sub-category: DRM
> - * Test category: GEM_Legacy
> + * Functionality: buddy allocation
> + * Test category: DRM
> + * Sub-category: Memory management
>   *
>   * SUBTEST: mock at contexts
>   * Category: Selftest
>   * Description: GEM context internal API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: context
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at dmabuf
>   * Category: Selftest
>   * Description: dma-buf (buffer management) API checks
> - * Functionality: API checks
> - * Sub-category: DRM
> - * Test category: GEM_Legacy
> + * Functionality: buffer management
> + * Test category: DRM
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at engine
>   * Category: Selftest
>   * Description: Engine topology API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: engine topology
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at evict
>   * Category: Selftest
>   * Description: GTT eviction API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: gtt eviction
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at fence
>   * Category: Selftest
>   * Description: semaphore API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: semaphore
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at gtt
>   * Category: Selftest
>   * Description: Virtual address management API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: gtt
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at hugepages
>   * Category: Selftest
>   * Description: Hugepage API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: huge page
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at memory_region
>   * Category: Selftest
>   * Description: Memory region API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: memory region
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at objects
>   * Category: Selftest
>   * Description: Buffer object API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: buffer object
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at phys
>   * Category: Selftest
>   * Description: legacy physical object API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: physical object
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at requests
>   * Category: Selftest
>   * Description: Internal command submission API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: requests
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at ring
>   * Category: Selftest
>   * Description: Ringbuffer management API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: ringbuffer
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at sanitycheck
>   * Category: Selftest
>   * Description: Selftest for the selftest
> - * Functionality: selftests
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: selftest
> + * Test category: i915
> + * Sub-category: Core
>   *
>   * SUBTEST: mock at scatterlist
>   * Category: Selftest
>   * Description: Scatterlist API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: scatterlist
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at shmem
>   * Category: Selftest
>   * Description: SHM utils API checks
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: shm
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at syncmap
>   * Category: Selftest
>   * Description: API checks for the contracted radixtree
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: contracted radixtree
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at timelines
>   * Category: Selftest
>   * Description: API checks for semaphore tracking
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: semaphore
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: mock at tlb
>   * Category: Selftest
>   * Test category: Memory Management
> + * Sub-category: Memory management
> + * Functionality: tlb
>   *
>   * SUBTEST: mock at uncore
>   * Category: Selftest
>   * Description: Basic i915 driver module selftests
>   * Feature: forcewake
> - * Test category: forcewake
> + * Functionality: forcewake
> + * Sub-category: Power management
>   *
>   * SUBTEST: mock at vma
>   * Category: Selftest
>   * Description: API checks for virtual address management
> - * Functionality: API checks
> - * Sub-category: i915
> - * Test category: GEM_Legacy
> + * Functionality: vma
> + * Test category: i915
> + * Sub-category: uapi
>   *
>   * SUBTEST: perf
> + * Category: Selftest
>   * Feature: oa
> + * Functionality: oa
> + * Sub-category: Performance
>   * Run type: FULL
>   *
>   * SUBTEST: perf at blt
>   * Category: Selftest
>   * Feature: i915 perf selftests
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   *
>   * SUBTEST: perf at engine_cs
>   * Category: Selftest
>   * Feature: i915 perf selftests
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   *
>   * SUBTEST: perf at region
>   * Category: Selftest
>   * Feature: i915 perf selftests
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   *
>   * SUBTEST: perf at request
>   * Category: Selftest
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   *
>   * SUBTEST: perf at scheduler
>   * Category: Selftest
> - * Functionality: Basic i915 module perf unit selftests
> - * Test category: Perf
> + * Description: Basic i915 module perf unit selftests
> + * Functionality: perf
> + * Sub-category: Performance
>   */
>  
>  IGT_TEST_DESCRIPTION("Basic unit tests for i915.ko");
> -- 
> 2.34.1
> 


More information about the igt-dev mailing list