All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH RFC i-g-t v1 0/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs
@ 2022-09-21 10:29 Kamil Konieczny
  2022-09-21 10:29 ` [igt-dev] [PATCH RFC i-g-t v1 2/2] HAX test only gem_basic subtests Kamil Konieczny
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Kamil Konieczny @ 2022-09-21 10:29 UTC (permalink / raw)
  To: igt-dev

Run gem_basic on multi-GPUs hw configuration with the help of
filtered devices. See description to patch 1/2.
Use HAX to test only gem_basic.

Kamil Konieczny (2):
  tests/i915/gem_basic: convert to multithreaded multi-GPUs
  HAX test only gem_basic subtests

 tests/i915/gem_basic.c                |  71 ++++++++++-
 tests/intel-ci/fast-feedback.testlist | 170 +-------------------------
 2 files changed, 66 insertions(+), 175 deletions(-)

-- 
2.34.1

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [igt-dev] [PATCH RFC i-g-t v1 2/2] HAX test only gem_basic subtests
  2022-09-21 10:29 [igt-dev] [PATCH RFC i-g-t v1 0/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs Kamil Konieczny
@ 2022-09-21 10:29 ` Kamil Konieczny
  2022-09-21 11:46 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/i915/gem_basic: convert to multithreaded multi-GPUs Patchwork
       [not found] ` <20220921102940.15121-2-kamil.konieczny@linux.intel.com>
  2 siblings, 0 replies; 5+ messages in thread
From: Kamil Konieczny @ 2022-09-21 10:29 UTC (permalink / raw)
  To: igt-dev

Test only gem_basic subtests.

Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
---
 tests/intel-ci/fast-feedback.testlist | 170 +-------------------------
 1 file changed, 1 insertion(+), 169 deletions(-)

diff --git a/tests/intel-ci/fast-feedback.testlist b/tests/intel-ci/fast-feedback.testlist
index bd5538a0..791724ad 100644
--- a/tests/intel-ci/fast-feedback.testlist
+++ b/tests/intel-ci/fast-feedback.testlist
@@ -2,176 +2,8 @@
 igt@i915_module_load@load
 
 # Keep alphabetically sorted by default
-igt@core_auth@basic-auth
-igt@debugfs_test@read_all_entries
-igt@fbdev@eof
-igt@fbdev@info
-igt@fbdev@nullptr
-igt@fbdev@read
-igt@fbdev@write
 igt@gem_basic@bad-close
 igt@gem_basic@create-close
 igt@gem_basic@create-fd-close
-igt@gem_busy@busy@all
-igt@gem_close_race@basic-process
-igt@gem_close_race@basic-threads
-igt@gem_ctx_create@basic
-igt@gem_ctx_create@basic-files
-igt@gem_ctx_exec@basic
-igt@gem_exec_basic@basic
-igt@gem_exec_create@basic
-igt@gem_exec_fence@basic-busy
-igt@gem_exec_fence@basic-wait
-igt@gem_exec_fence@basic-await
-igt@gem_exec_fence@nb-await
-igt@gem_exec_gttfill@basic
-igt@gem_exec_parallel@engines
-igt@gem_exec_store@basic
-igt@gem_flink_basic@bad-flink
-igt@gem_flink_basic@bad-open
-igt@gem_flink_basic@basic
-igt@gem_flink_basic@double-flink
-igt@gem_flink_basic@flink-lifetime
-igt@gem_huc_copy@huc-copy
-igt@gem_linear_blits@basic
-igt@gem_mmap@basic
-igt@gem_mmap_gtt@basic
-igt@gem_render_linear_blits@basic
-igt@gem_render_tiled_blits@basic
-igt@gem_ringfill@basic-all
-igt@gem_softpin@allocator-basic
-igt@gem_softpin@allocator-basic-reserve
-igt@gem_softpin@safe-alignment
-igt@gem_sync@basic-all
-igt@gem_sync@basic-each
-igt@gem_tiled_blits@basic
-igt@gem_tiled_fence_blits@basic
-igt@gem_tiled_pread_basic
-igt@gem_wait@busy@all
-igt@gem_wait@wait@all
-igt@i915_getparams_basic@basic-eu-total
-igt@i915_getparams_basic@basic-subslice-total
-igt@i915_hangman@error-state-basic
-igt@i915_pciid
-igt@kms_addfb_basic@addfb25-bad-modifier
-igt@kms_addfb_basic@addfb25-framebuffer-vs-set-tiling
-igt@kms_addfb_basic@addfb25-modifier-no-flag
-igt@kms_addfb_basic@addfb25-x-tiled-legacy
-igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy
-igt@kms_addfb_basic@addfb25-yf-tiled-legacy
-igt@kms_addfb_basic@addfb25-y-tiled-legacy
-igt@kms_addfb_basic@addfb25-y-tiled-small-legacy
-igt@kms_addfb_basic@bad-pitch-0
-igt@kms_addfb_basic@bad-pitch-1024
-igt@kms_addfb_basic@bad-pitch-128
-igt@kms_addfb_basic@bad-pitch-256
-igt@kms_addfb_basic@bad-pitch-32
-igt@kms_addfb_basic@bad-pitch-63
-igt@kms_addfb_basic@bad-pitch-65536
-igt@kms_addfb_basic@bad-pitch-999
-igt@kms_addfb_basic@basic
-igt@kms_addfb_basic@basic-x-tiled-legacy
-igt@kms_addfb_basic@basic-y-tiled-legacy
-igt@kms_addfb_basic@bo-too-small
-igt@kms_addfb_basic@bo-too-small-due-to-tiling
-igt@kms_addfb_basic@clobberred-modifier
-igt@kms_addfb_basic@framebuffer-vs-set-tiling
-igt@kms_addfb_basic@invalid-get-prop
-igt@kms_addfb_basic@invalid-get-prop-any
-igt@kms_addfb_basic@invalid-set-prop
-igt@kms_addfb_basic@invalid-set-prop-any
-igt@kms_addfb_basic@no-handle
-igt@kms_addfb_basic@size-max
-igt@kms_addfb_basic@small-bo
-igt@kms_addfb_basic@tile-pitch-mismatch
-igt@kms_addfb_basic@too-high
-igt@kms_addfb_basic@too-wide
-igt@kms_addfb_basic@unused-handle
-igt@kms_addfb_basic@unused-modifier
-igt@kms_addfb_basic@unused-offsets
-igt@kms_addfb_basic@unused-pitches
-igt@kms_busy@basic
-igt@kms_chamelium@dp-hpd-fast
-igt@kms_chamelium@dp-edid-read
-igt@kms_chamelium@dp-crc-fast
-igt@kms_chamelium@hdmi-hpd-fast
-igt@kms_chamelium@hdmi-edid-read
-igt@kms_chamelium@hdmi-crc-fast
-igt@kms_chamelium@vga-hpd-fast
-igt@kms_chamelium@vga-edid-read
-igt@kms_prop_blob@basic
-igt@kms_cursor_legacy@basic-busy-flip-before-cursor
-igt@kms_cursor_legacy@basic-flip-after-cursor
-igt@kms_cursor_legacy@basic-flip-before-cursor
-igt@kms_flip@basic-flip-vs-dpms
-igt@kms_flip@basic-flip-vs-modeset
-igt@kms_flip@basic-flip-vs-wf_vblank
-igt@kms_flip@basic-plain-flip
-igt@kms_force_connector_basic@force-connector-state
-igt@kms_force_connector_basic@force-edid
-igt@kms_force_connector_basic@force-load-detect
-igt@kms_force_connector_basic@prune-stale-modes
-igt@kms_frontbuffer_tracking@basic
-igt@kms_pipe_crc_basic@compare-crc-sanitycheck
-igt@kms_pipe_crc_basic@hang-read-crc
-igt@kms_pipe_crc_basic@nonblocking-crc
-igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence
-igt@kms_pipe_crc_basic@read-crc
-igt@kms_pipe_crc_basic@read-crc-frame-sequence
-igt@kms_psr@primary_page_flip
-igt@kms_psr@cursor_plane_move
-igt@kms_psr@sprite_plane_onoff
-igt@kms_psr@primary_mmap_gtt
-igt@kms_setmode@basic-clone-single-crtc
-igt@i915_pm_backlight@basic-brightness
-igt@i915_pm_rpm@basic-pci-d3-state
-igt@i915_pm_rpm@basic-rte
-igt@i915_pm_rps@basic-api
-igt@prime_self_import@basic-llseek-bad
-igt@prime_self_import@basic-llseek-size
-igt@prime_self_import@basic-with_fd_dup
-igt@prime_self_import@basic-with_one_bo
-igt@prime_self_import@basic-with_one_bo_two_files
-igt@prime_self_import@basic-with_two_bos
-igt@prime_vgem@basic-fence-flip
-igt@prime_vgem@basic-fence-mmap
-igt@prime_vgem@basic-fence-read
-igt@prime_vgem@basic-gtt
-igt@prime_vgem@basic-read
-igt@prime_vgem@basic-write
-igt@prime_vgem@basic-userptr
-igt@vgem_basic@setversion
-igt@vgem_basic@create
-igt@vgem_basic@debugfs
-igt@vgem_basic@dmabuf-export
-igt@vgem_basic@dmabuf-fence
-igt@vgem_basic@dmabuf-fence-before
-igt@vgem_basic@dmabuf-mmap
-igt@vgem_basic@mmap
-igt@vgem_basic@second-client
-igt@vgem_basic@sysfs
 
-# All tests that do module unloading and reloading are executed last.
-# They will sometimes reveal issues of earlier tests leaving the
-# driver in a broken state that is not otherwise noticed in that test.
-
-igt@core_hotunplug@unbind-rebind
-igt@vgem_basic@unload
-igt@i915_module_load@reload
-igt@gem_lmem_swapping@basic
-igt@gem_lmem_swapping@parallel-random-engines
-igt@gem_lmem_swapping@random-engines
-igt@gem_lmem_swapping@verify-random
-igt@i915_pm_rpm@module-reload
-
-# Kernel selftests
-igt@i915_selftest@live
-igt@dmabuf@all
-
-# System wide suspend tests
-igt@i915_suspend@basic-s2idle-without-i915
-igt@i915_suspend@basic-s3-without-i915
-igt@gem_exec_suspend@basic-s0
-igt@gem_exec_suspend@basic-s3
-igt@kms_chamelium@common-hpd-after-suspend
-igt@kms_pipe_crc_basic@suspend-read-crc
+igt@meta_test@fail-result
-- 
2.34.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [igt-dev] ✗ Fi.CI.BAT: failure for tests/i915/gem_basic: convert to multithreaded multi-GPUs
  2022-09-21 10:29 [igt-dev] [PATCH RFC i-g-t v1 0/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs Kamil Konieczny
  2022-09-21 10:29 ` [igt-dev] [PATCH RFC i-g-t v1 2/2] HAX test only gem_basic subtests Kamil Konieczny
@ 2022-09-21 11:46 ` Patchwork
       [not found] ` <20220921102940.15121-2-kamil.konieczny@linux.intel.com>
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2022-09-21 11:46 UTC (permalink / raw)
  To: Kamil Konieczny; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 9446 bytes --]

== Series Details ==

Series: tests/i915/gem_basic: convert to multithreaded multi-GPUs
URL   : https://patchwork.freedesktop.org/series/108823/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_12164 -> IGTPW_7811
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_7811 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_7811, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/index.html

Participating hosts (34 -> 45)
------------------------------

  Additional (12): fi-rkl-11600 fi-tgl-dsi bat-dg1-5 bat-dg2-8 bat-adlm-1 fi-icl-u2 bat-dg2-9 bat-adlp-6 bat-adln-1 bat-jsl-3 bat-rpls-1 bat-dg2-11 
  Missing    (1): fi-bdw-samus 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_7811:

### IGT changes ###

#### Possible regressions ####

  * igt@meta_test@fail-result (NEW):
    - fi-ilk-650:         NOTRUN -> [FAIL][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-ilk-650/igt@meta_test@fail-result.html
    - fi-tgl-u2:          NOTRUN -> [FAIL][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-tgl-u2/igt@meta_test@fail-result.html
    - fi-bsw-nick:        NOTRUN -> [FAIL][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-bsw-nick/igt@meta_test@fail-result.html
    - fi-bxt-dsi:         NOTRUN -> [FAIL][4]
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-bxt-dsi/igt@meta_test@fail-result.html
    - {fi-jsl-1}:         NOTRUN -> [FAIL][5]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-jsl-1/igt@meta_test@fail-result.html
    - fi-rkl-11600:       NOTRUN -> [FAIL][6]
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-rkl-11600/igt@meta_test@fail-result.html
    - fi-hsw-g3258:       NOTRUN -> [FAIL][7]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-hsw-g3258/igt@meta_test@fail-result.html
    - fi-blb-e6850:       NOTRUN -> [FAIL][8]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-blb-e6850/igt@meta_test@fail-result.html
    - {bat-rpls-1}:       NOTRUN -> [FAIL][9]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-rpls-1/igt@meta_test@fail-result.html
    - {bat-adlp-6}:       NOTRUN -> [FAIL][10]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-adlp-6/igt@meta_test@fail-result.html
    - fi-skl-6600u:       NOTRUN -> [FAIL][11]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-skl-6600u/igt@meta_test@fail-result.html
    - fi-glk-dsi:         NOTRUN -> [FAIL][12]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-glk-dsi/igt@meta_test@fail-result.html
    - fi-bdw-gvtdvm:      NOTRUN -> [FAIL][13]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-bdw-gvtdvm/igt@meta_test@fail-result.html
    - {fi-ehl-2}:         NOTRUN -> [FAIL][14]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-ehl-2/igt@meta_test@fail-result.html
    - fi-icl-u2:          NOTRUN -> [FAIL][15]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-icl-u2/igt@meta_test@fail-result.html
    - fi-bsw-kefka:       NOTRUN -> [FAIL][16]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-bsw-kefka/igt@meta_test@fail-result.html
    - fi-adl-ddr5:        NOTRUN -> [FAIL][17]
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-adl-ddr5/igt@meta_test@fail-result.html
    - bat-dg1-5:          NOTRUN -> [FAIL][18]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-dg1-5/igt@meta_test@fail-result.html
    - fi-cfl-guc:         NOTRUN -> [FAIL][19]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-cfl-guc/igt@meta_test@fail-result.html
    - {bat-jsl-3}:        NOTRUN -> [FAIL][20]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-jsl-3/igt@meta_test@fail-result.html
    - fi-pnv-d510:        NOTRUN -> [FAIL][21]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-pnv-d510/igt@meta_test@fail-result.html
    - fi-bdw-5557u:       NOTRUN -> [FAIL][22]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-bdw-5557u/igt@meta_test@fail-result.html
    - {bat-dg2-9}:        NOTRUN -> [FAIL][23]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-dg2-9/igt@meta_test@fail-result.html
    - fi-snb-2520m:       NOTRUN -> [FAIL][24]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-snb-2520m/igt@meta_test@fail-result.html
    - fi-glk-j4005:       NOTRUN -> [FAIL][25]
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-glk-j4005/igt@meta_test@fail-result.html
    - fi-hsw-4770:        NOTRUN -> [FAIL][26]
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-hsw-4770/igt@meta_test@fail-result.html
    - fi-skl-6700k2:      NOTRUN -> [FAIL][27]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-skl-6700k2/igt@meta_test@fail-result.html
    - fi-cfl-8109u:       NOTRUN -> [FAIL][28]
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-cfl-8109u/igt@meta_test@fail-result.html
    - {bat-adln-1}:       NOTRUN -> [FAIL][29]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-adln-1/igt@meta_test@fail-result.html
    - fi-rkl-guc:         NOTRUN -> [FAIL][30]
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-rkl-guc/igt@meta_test@fail-result.html
    - {bat-dg2-11}:       NOTRUN -> [FAIL][31]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-dg2-11/igt@meta_test@fail-result.html
    - fi-ivb-3770:        NOTRUN -> [FAIL][32]
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-ivb-3770/igt@meta_test@fail-result.html
    - {bat-dg2-8}:        NOTRUN -> [FAIL][33]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-dg2-8/igt@meta_test@fail-result.html
    - fi-kbl-7567u:       NOTRUN -> [FAIL][34]
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-kbl-7567u/igt@meta_test@fail-result.html
    - fi-cfl-8700k:       NOTRUN -> [FAIL][35]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-cfl-8700k/igt@meta_test@fail-result.html
    - {fi-tgl-dsi}:       NOTRUN -> [FAIL][36]
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-tgl-dsi/igt@meta_test@fail-result.html
    - {fi-tgl-mst}:       NOTRUN -> [FAIL][37]
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-tgl-mst/igt@meta_test@fail-result.html
    - fi-snb-2600:        NOTRUN -> [FAIL][38]
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-snb-2600/igt@meta_test@fail-result.html
    - {bat-adlm-1}:       NOTRUN -> [FAIL][39]
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/bat-adlm-1/igt@meta_test@fail-result.html

  
New tests
---------

  New tests have been introduced between CI_DRM_12164 and IGTPW_7811:

### New IGT tests (1) ###

  * igt@meta_test@fail-result:
    - Statuses : 40 fail(s)
    - Exec time: [0.00, 0.09] s

  

Known issues
------------

  Here are the changes found in IGTPW_7811 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@meta_test@fail-result (NEW):
    - fi-elk-e7500:       NOTRUN -> [FAIL][40] ([i915#6836])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-elk-e7500/igt@meta_test@fail-result.html

  
#### Warnings ####

  * igt@runner@aborted:
    - fi-kbl-8809g:       [FAIL][41] ([i915#6219] / [i915#6884]) -> [FAIL][42] ([i915#6641] / [i915#6884])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12164/fi-kbl-8809g/igt@runner@aborted.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-kbl-8809g/igt@runner@aborted.html
    - fi-kbl-soraka:      [FAIL][43] ([i915#6219] / [i915#6884]) -> [FAIL][44] ([i915#6884])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12164/fi-kbl-soraka/igt@runner@aborted.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-kbl-soraka/igt@runner@aborted.html
    - fi-kbl-guc:         [FAIL][45] ([i915#6219] / [i915#6884]) -> [FAIL][46] ([i915#6884])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12164/fi-kbl-guc/igt@runner@aborted.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/fi-kbl-guc/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [i915#6219]: https://gitlab.freedesktop.org/drm/intel/issues/6219
  [i915#6641]: https://gitlab.freedesktop.org/drm/intel/issues/6641
  [i915#6836]: https://gitlab.freedesktop.org/drm/intel/issues/6836
  [i915#6884]: https://gitlab.freedesktop.org/drm/intel/issues/6884


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_6659 -> IGTPW_7811

  CI-20190529: 20190529
  CI_DRM_12164: a1f63e144e545f0ce8f41f41005f2dfc552eb836 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7811: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/index.html
  IGT_6659: 1becf700a737a7a98555a0cfbe8566355377afb2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7811/index.html

[-- Attachment #2: Type: text/html, Size: 11196 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH RFC i-g-t v1 1/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs
       [not found] ` <20220921102940.15121-2-kamil.konieczny@linux.intel.com>
@ 2022-09-21 13:58   ` Mauro Carvalho Chehab
  2022-09-27 11:41     ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2022-09-21 13:58 UTC (permalink / raw)
  To: Kamil Konieczny; +Cc: Petri Latvala, igt-dev, Andi Shyti, Chris Wilson

Hi Kamil,

On Wed, 21 Sep 2022 12:29:39 +0200
Kamil Konieczny <kamil.konieczny@linux.intel.com> wrote:

> This will convert basic tests to run on multi-GPU hardware
> configuration. It will take effect when --device option will be
> used and at least two devices will be found with a filter. When
> there are no filtered ones or there is only one, tests will
> fall through to old run.
> 
> One method for use will be to extend filtered devices with '*'
> or regex:
> 
> sudo ./gem_basic --device=pci:vendor=intel,device=discrete,card=*
> 
> Pros: no change in tests names, no new tests added. Use restricted
> to runs with suitable hw config.
> 
> Cons: it can be hard to replicate failed tests or it can break
> igt-framework in compliated use cases. It is also not clear how
> to change this solution into clean macro for reuse.
> 
> Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
> Cc: Andi Shyti <andi.shyti@linux.intel.com>
> Cc: Anna Karas <anna.karas@intel.com>
> Cc: Chris Wilson <chris.p.wilson@linux.intel.com>
> Cc: Dominik Grzegorzek <dominik.grzegorzek@intel.com>
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Mauro Carvalho Chehab <mauro.chehab@linux.intel.com>
> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
> ---
>  tests/i915/gem_basic.c | 71 ++++++++++++++++++++++++++++++++++++++----
>  1 file changed, 65 insertions(+), 6 deletions(-)
> 
> diff --git a/tests/i915/gem_basic.c b/tests/i915/gem_basic.c
> index 17ae190c..66413e60 100644
> --- a/tests/i915/gem_basic.c
> +++ b/tests/i915/gem_basic.c
> @@ -38,6 +38,7 @@
>  
>  #include "drm.h"
>  #include "i915/gem_create.h"
> +#include "igt_device_scan.h"
>  
>  IGT_TEST_DESCRIPTION("Tests basic gem_create and gem_close IOCTLs");
>  
> @@ -48,6 +49,7 @@ test_bad_close(int fd)
>  	int ret;
>  
>  	igt_info("Testing error return on bad close ioctl.\n");
> +	igt_info("%s: pid: %d, tid: %lu, CPU: %d\n", __func__, getpid(), pthread_self(), sched_getcpu());

Hmm... perhaps we should add pid at igt_info(), for multi-GPU scenarios, e. g.
when IGT was asked to run with more than one GPUs.

Not sure if it makes sense to display tid/CPU here.

>  
>  	close_bo.handle = 0x10101010;
>  	ret = ioctl(fd, DRM_IOCTL_GEM_CLOSE, &close_bo);
> @@ -61,6 +63,7 @@ test_create_close(int fd)
>  	uint32_t handle;
>  
>  	igt_info("Testing creating and closing an object.\n");
> +	igt_info("%s: pid: %d, tid: %lu, CPU: %d\n", __func__, getpid(), pthread_self(), sched_getcpu());
>  
>  	handle = gem_create(fd, 16*1024);
>  
> @@ -71,6 +74,7 @@ static void
>  test_create_fd_close(int fd)
>  {
>  	igt_info("Testing closing with an object allocated.\n");
> +	igt_info("%s: pid: %d, tid: %lu, CPU: %d\n", __func__, getpid(), pthread_self(), sched_getcpu());
>  
>  	gem_create(fd, 16*1024);
>  	/* leak it */
> @@ -78,6 +82,49 @@ test_create_fd_close(int fd)
>  	close(fd);
>  }
>  
> +struct multi_gpu_data {
> +	int in_fd;
> +	void (*fn)(int fd);
> +};
> +
> +static void *run_on_one_gpu(void *pdata)
> +{
> +	struct multi_gpu_data *pgpu = pdata;
> +
> +	(pgpu->fn)(pgpu->in_fd);
> +
> +	return NULL;
> +}
> +
> +static void run_on_gpus(void (*fn)(int))
> +{
> +	struct multi_gpu_data *in_arr;
> +	pthread_t *pth;
> +	int size = igt_device_filter_count();
> +
> +	in_arr = calloc(size, sizeof(struct multi_gpu_data));
> +	igt_assert(!in_arr);
> +
> +	pth = calloc(size, sizeof(pthread_t));
> +	igt_assert(!pth);
> +
> +	igt_info("pid: %d, running on %d GPUs\n", getpid(), size);
> +
> +	for (int i = 0; i < size; ++i) {
> +		in_arr[i].in_fd = __drm_open_driver_another(i, DRIVER_ANY);
> +		in_arr[i].fn = fn;
> +	}
> +
> +	for (int i = 0; i < size; ++i)
> +		pthread_create(pth + i, 0, run_on_one_gpu, in_arr + i);
> +
> +	for (int i = 0; i < size; ++i)
> +		pthread_join(pth[i], NULL);
> +
> +	free(in_arr);
> +	free(pth);
> +}
> +

Interesting approach, but having to add the same function on all tests that
will run with multi-GPU seems too much work. We need to add the logic at
the library, if possible using some macro/inline based solution, as Anna
proposed.

>  int fd;
>  
>  igt_main
> @@ -86,14 +133,26 @@ igt_main
>  		fd = drm_open_driver(DRIVER_INTEL);
>  
>  	igt_describe("Verify that gem_close fails with bad params.");
> -	igt_subtest("bad-close")
> -		test_bad_close(fd);
> +	igt_subtest("bad-close") {
> +		if (igt_device_filter_count() < 2)
> +			test_bad_close(fd);
> +		else
> +			run_on_gpus(test_bad_close);
> +	}
>  
>  	igt_describe("Verify basic functionality of gem_create and gem_close.");
> -	igt_subtest("create-close")
> -		test_create_close(fd);
> +	igt_subtest("create-close") {
> +		if (igt_device_filter_count() < 2)
> +			test_create_close(fd);
> +		else
> +			run_on_gpus(test_create_close);
> +	}
>  
>  	igt_describe("Verify that closing drm driver is possible with opened gem object.");
> -	igt_subtest("create-fd-close")
> -		test_create_fd_close(fd);
> +	igt_subtest("create-fd-close") {
> +		if (igt_device_filter_count() < 2)
> +			test_create_fd_close(fd);
> +		else
> +			run_on_gpus(test_create_fd_close);
> +	}
>  }

Regards,
Mauro

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH RFC i-g-t v1 1/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs
  2022-09-21 13:58   ` [igt-dev] [PATCH RFC i-g-t v1 1/2] " Mauro Carvalho Chehab
@ 2022-09-27 11:41     ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2022-09-27 11:41 UTC (permalink / raw)
  To: Kamil Konieczny; +Cc: Petri Latvala, igt-dev, Andi Shyti, Chris Wilson

On Wed, 21 Sep 2022 15:58:01 +0200
Mauro Carvalho Chehab <mauro.chehab@linux.intel.com> wrote:

> Hi Kamil,

> > @@ -48,6 +49,7 @@ test_bad_close(int fd)
> >  	int ret;
> >  
> >  	igt_info("Testing error return on bad close ioctl.\n");
> > +	igt_info("%s: pid: %d, tid: %lu, CPU: %d\n", __func__, getpid(), pthread_self(), sched_getcpu());  
> 
> Hmm... perhaps we should add pid at igt_info(), for multi-GPU scenarios, e. g.
> when IGT was asked to run with more than one GPUs.
> 
> Not sure if it makes sense to display tid/CPU here.

Btw, what I would do, instead, would be something like using the encosed
patch to store GPU data, filling "gpu_string" at the macro that would handle
multiple GPUs.

A poor usage of it would be to use something similar to the enclosed patch[1]
calling set_gpu_string inside the pthread.

<code>
diff --git a/lib/drmtest.c b/lib/drmtest.c
index 16e80bdfcfb1..d16cd4f78edd 100644
--- a/lib/drmtest.c
+++ b/lib/drmtest.c
@@ -288,6 +288,8 @@ static int __search_and_open(const char *base, int offset, unsigned int chipset,
 
 		sprintf(name, "%s%u", base, i + offset);
 
+		set_gpu_string(name);
+
 		if (_is_already_opened(name, as_idx))
 			continue;
</code>

With that, the subtest return code would print:

	$ sudo ./build/tests/gem_basic --run bad-close
	IGT-Version: 1.26-g336bb75c0d5b (x86_64) (Linux: 5.19.0-drm-50bc22230125+ x86_64)
	Starting subtest: bad-close
	Testing error return on bad close ioctl.
	/dev/dri/card0: Subtest bad-close: SUCCESS (0.000s)

Yet, instead of placing card0 or PID, I would try to place something that
better describe the GPU - e. g. GPU model and/or something similar to 
what "lspci -m" outputs. So, for this GPU, for instance:

	$ lspci -s "00:02.0"
	00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01)

I would set gpu_string to something like: "00:02.0 TGL(8086:9a49)".

Regards,
Mauro

---

From 6bd937a3e0758ed284597748d0d3b65861f365e4 Mon Sep 17 00:00:00 2001
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Date: Tue, 27 Sep 2022 13:03:10 +0200
Subject: [PATCH] o lib/igt_core: add a logic to store a GPU string

This is helpful on tests that run with multiple GPUs.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

diff --git a/lib/igt_core.c b/lib/igt_core.c
index dc6486c841f0..1807a7b5a1da 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -1453,6 +1453,16 @@ bool __igt_enter_dynamic_container(void)
 	return true;
 }
 
+static __thread char *gpu_string = NULL;
+
+void set_gpu_string(const char *string)
+{
+	if (gpu_string)
+		free(gpu_string);
+	gpu_string = strdup(string);
+	igt_assert(gpu_string);
+}
+
 __noreturn static void exit_subtest(const char *result)
 {
 	struct timespec now;
@@ -1463,6 +1473,9 @@ __noreturn static void exit_subtest(const char *result)
 
 	igt_gettime(&now);
 
+	if (gpu_string)
+		igt_info("%s: ", gpu_string);
+
 	igt_info("%s%s %s: %s (%.3fs)%s\n",
 		 (!__igt_plain_output) ? "\x1b[1m" : "",
 		 subtest_text, *subtest_name, result,
diff --git a/lib/igt_core.h b/lib/igt_core.h
index f21723dec4bc..3a481fe6f67f 100644
--- a/lib/igt_core.h
+++ b/lib/igt_core.h
@@ -1492,4 +1492,10 @@ static inline void igt_pci_system_cleanup(void)
 {
 }
 
+/**
+ * set_gpu_string():
+ * Sets a string to describe the GPU being tested
+ */
+void set_gpu_string(const char *string);
+
 #endif /* IGT_CORE_H */

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-09-27 11:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-21 10:29 [igt-dev] [PATCH RFC i-g-t v1 0/2] tests/i915/gem_basic: convert to multithreaded multi-GPUs Kamil Konieczny
2022-09-21 10:29 ` [igt-dev] [PATCH RFC i-g-t v1 2/2] HAX test only gem_basic subtests Kamil Konieczny
2022-09-21 11:46 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/i915/gem_basic: convert to multithreaded multi-GPUs Patchwork
     [not found] ` <20220921102940.15121-2-kamil.konieczny@linux.intel.com>
2022-09-21 13:58   ` [igt-dev] [PATCH RFC i-g-t v1 1/2] " Mauro Carvalho Chehab
2022-09-27 11:41     ` Mauro Carvalho Chehab

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.