* [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression
@ 2025-10-13 14:48 Nitin Gote
2025-10-13 14:28 ` ✓ CI.KUnit: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork
` (5 more replies)
0 siblings, 6 replies; 9+ messages in thread
From: Nitin Gote @ 2025-10-13 14:48 UTC (permalink / raw)
To: intel-xe; +Cc: matthew.brost, matthew.auld, thomas.hellstrom, Nitin Gote
This series implements VM_BIND decompression support in the XE driver
for both non-fault mode and fault mode.
Tested with https://patchwork.freedesktop.org/series/154711/
which validates basic VM_BIND DECOMPRESS behavior for both
regular and FAULT_MODE VMs.
v2:
- Add kernel doc (Matt)
- Move decompression work out of vm_bind ioctl. (Matt)
- Put that work in a small helper at the BO/migrate layer invoke it
from vma_lock_and_validate which already runs under drm_exec.
- Move lightweight checks to vm_bind_ioctl_check_args (Matthew Auld)
Nitin Gote (3):
drm/xe: add VM_BIND DECOMPRESS uapi flag
drm/xe: add xe_migrate_resolve wrapper and is_vram_resolve support
drm/xe: implement VM_BIND decompression in vm_bind_ioctl
drivers/gpu/drm/xe/xe_bo.c | 53 +++++++++++++++++++
drivers/gpu/drm/xe/xe_bo.h | 3 ++
drivers/gpu/drm/xe/xe_migrate.c | 90 ++++++++++++++++++++++----------
drivers/gpu/drm/xe/xe_migrate.h | 7 +++
drivers/gpu/drm/xe/xe_vm.c | 48 ++++++++++++-----
drivers/gpu/drm/xe/xe_vm_types.h | 2 +
include/uapi/drm/xe_drm.h | 8 +++
7 files changed, 170 insertions(+), 41 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 9+ messages in thread* ✓ CI.KUnit: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote @ 2025-10-13 14:28 ` Patchwork 2025-10-13 14:48 ` [PATCH v2 1/3] drm/xe: add VM_BIND DECOMPRESS uapi flag Nitin Gote ` (4 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2025-10-13 14:28 UTC (permalink / raw) To: Nitin Gote; +Cc: intel-xe == Series Details == Series: drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) URL : https://patchwork.freedesktop.org/series/154714/ State : success == Summary == + trap cleanup EXIT + /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig [14:25:52] Configuring KUnit Kernel ... Generating .config ... Populating config with: $ make ARCH=um O=.kunit olddefconfig [14:25:59] Building KUnit Kernel ... Populating config with: $ make ARCH=um O=.kunit olddefconfig Building with: $ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48 [14:26:59] Starting KUnit Kernel (1/1)... [14:26:59] ============================================================ Running tests with: $ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt [14:26:59] ================== guc_buf (11 subtests) =================== [14:26:59] [PASSED] test_smallest [14:26:59] [PASSED] test_largest [14:26:59] [PASSED] test_granular [14:26:59] [PASSED] test_unique [14:26:59] [PASSED] test_overlap [14:26:59] [PASSED] test_reusable [14:26:59] [PASSED] test_too_big [14:26:59] [PASSED] test_flush [14:26:59] [PASSED] test_lookup [14:26:59] [PASSED] test_data [14:26:59] [PASSED] test_class [14:26:59] ===================== [PASSED] guc_buf ===================== [14:26:59] =================== guc_dbm (7 subtests) =================== [14:26:59] [PASSED] test_empty [14:26:59] [PASSED] test_default [14:26:59] ======================== test_size ======================== [14:26:59] [PASSED] 4 [14:26:59] [PASSED] 8 [14:26:59] [PASSED] 32 [14:26:59] [PASSED] 256 [14:26:59] ==================== [PASSED] test_size ==================== [14:26:59] ======================= test_reuse ======================== [14:26:59] [PASSED] 4 [14:26:59] [PASSED] 8 [14:26:59] [PASSED] 32 [14:26:59] [PASSED] 256 [14:26:59] =================== [PASSED] test_reuse ==================== [14:26:59] =================== test_range_overlap ==================== [14:26:59] [PASSED] 4 [14:26:59] [PASSED] 8 [14:26:59] [PASSED] 32 [14:26:59] [PASSED] 256 [14:26:59] =============== [PASSED] test_range_overlap ================ [14:26:59] =================== test_range_compact ==================== [14:26:59] [PASSED] 4 [14:26:59] [PASSED] 8 [14:26:59] [PASSED] 32 [14:26:59] [PASSED] 256 [14:26:59] =============== [PASSED] test_range_compact ================ [14:26:59] ==================== test_range_spare ===================== [14:26:59] [PASSED] 4 [14:26:59] [PASSED] 8 [14:26:59] [PASSED] 32 [14:26:59] [PASSED] 256 [14:26:59] ================ [PASSED] test_range_spare ================= [14:26:59] ===================== [PASSED] guc_dbm ===================== [14:26:59] =================== guc_idm (6 subtests) =================== [14:26:59] [PASSED] bad_init [14:26:59] [PASSED] no_init [14:26:59] [PASSED] init_fini [14:26:59] [PASSED] check_used [14:26:59] [PASSED] check_quota [14:26:59] [PASSED] check_all [14:26:59] ===================== [PASSED] guc_idm ===================== [14:26:59] ================== no_relay (3 subtests) =================== [14:26:59] [PASSED] xe_drops_guc2pf_if_not_ready [14:26:59] [PASSED] xe_drops_guc2vf_if_not_ready [14:26:59] [PASSED] xe_rejects_send_if_not_ready [14:26:59] ==================== [PASSED] no_relay ===================== [14:26:59] ================== pf_relay (14 subtests) ================== [14:26:59] [PASSED] pf_rejects_guc2pf_too_short [14:26:59] [PASSED] pf_rejects_guc2pf_too_long [14:26:59] [PASSED] pf_rejects_guc2pf_no_payload [14:26:59] [PASSED] pf_fails_no_payload [14:26:59] [PASSED] pf_fails_bad_origin [14:26:59] [PASSED] pf_fails_bad_type [14:26:59] [PASSED] pf_txn_reports_error [14:26:59] [PASSED] pf_txn_sends_pf2guc [14:26:59] [PASSED] pf_sends_pf2guc [14:26:59] [SKIPPED] pf_loopback_nop [14:26:59] [SKIPPED] pf_loopback_echo [14:26:59] [SKIPPED] pf_loopback_fail [14:26:59] [SKIPPED] pf_loopback_busy [14:26:59] [SKIPPED] pf_loopback_retry [14:26:59] ==================== [PASSED] pf_relay ===================== [14:26:59] ================== vf_relay (3 subtests) =================== [14:26:59] [PASSED] vf_rejects_guc2vf_too_short [14:26:59] [PASSED] vf_rejects_guc2vf_too_long [14:26:59] [PASSED] vf_rejects_guc2vf_no_payload [14:26:59] ==================== [PASSED] vf_relay ===================== [14:26:59] ===================== lmtt (1 subtest) ===================== [14:26:59] ======================== test_ops ========================= [14:26:59] [PASSED] 2-level [14:26:59] [PASSED] multi-level [14:26:59] ==================== [PASSED] test_ops ===================== [14:26:59] ====================== [PASSED] lmtt ======================= [14:26:59] ================= pf_service (11 subtests) ================= [14:26:59] [PASSED] pf_negotiate_any [14:26:59] [PASSED] pf_negotiate_base_match [14:26:59] [PASSED] pf_negotiate_base_newer [14:26:59] [PASSED] pf_negotiate_base_next [14:26:59] [SKIPPED] pf_negotiate_base_older [14:26:59] [PASSED] pf_negotiate_base_prev [14:26:59] [PASSED] pf_negotiate_latest_match [14:26:59] [PASSED] pf_negotiate_latest_newer [14:26:59] [PASSED] pf_negotiate_latest_next [14:26:59] [SKIPPED] pf_negotiate_latest_older [14:26:59] [SKIPPED] pf_negotiate_latest_prev [14:26:59] =================== [PASSED] pf_service ==================== [14:26:59] ================= xe_guc_g2g (2 subtests) ================== [14:26:59] ============== xe_live_guc_g2g_kunit_default ============== [14:26:59] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ========== [14:26:59] ============== xe_live_guc_g2g_kunit_allmem =============== [14:26:59] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ========== [14:26:59] =================== [SKIPPED] xe_guc_g2g =================== [14:26:59] =================== xe_mocs (2 subtests) =================== [14:26:59] ================ xe_live_mocs_kernel_kunit ================ [14:26:59] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============ [14:26:59] ================ xe_live_mocs_reset_kunit ================= [14:26:59] ============ [SKIPPED] xe_live_mocs_reset_kunit ============ [14:26:59] ==================== [SKIPPED] xe_mocs ===================== [14:26:59] ================= xe_migrate (2 subtests) ================== [14:26:59] ================= xe_migrate_sanity_kunit ================= [14:26:59] ============ [SKIPPED] xe_migrate_sanity_kunit ============= [14:26:59] ================== xe_validate_ccs_kunit ================== [14:26:59] ============= [SKIPPED] xe_validate_ccs_kunit ============== [14:26:59] =================== [SKIPPED] xe_migrate =================== [14:26:59] ================== xe_dma_buf (1 subtest) ================== [14:26:59] ==================== xe_dma_buf_kunit ===================== [14:26:59] ================ [SKIPPED] xe_dma_buf_kunit ================ [14:26:59] =================== [SKIPPED] xe_dma_buf =================== [14:26:59] ================= xe_bo_shrink (1 subtest) ================= [14:26:59] =================== xe_bo_shrink_kunit ==================== [14:26:59] =============== [SKIPPED] xe_bo_shrink_kunit =============== [14:26:59] ================== [SKIPPED] xe_bo_shrink ================== [14:26:59] ==================== xe_bo (2 subtests) ==================== [14:26:59] ================== xe_ccs_migrate_kunit =================== [14:26:59] ============== [SKIPPED] xe_ccs_migrate_kunit ============== [14:26:59] ==================== xe_bo_evict_kunit ==================== [14:26:59] =============== [SKIPPED] xe_bo_evict_kunit ================ [14:26:59] ===================== [SKIPPED] xe_bo ====================== [14:26:59] ==================== args (11 subtests) ==================== [14:26:59] [PASSED] count_args_test [14:26:59] [PASSED] call_args_example [14:26:59] [PASSED] call_args_test [14:26:59] [PASSED] drop_first_arg_example [14:26:59] [PASSED] drop_first_arg_test [14:26:59] [PASSED] first_arg_example [14:26:59] [PASSED] first_arg_test [14:26:59] [PASSED] last_arg_example [14:26:59] [PASSED] last_arg_test [14:26:59] [PASSED] pick_arg_example [14:26:59] [PASSED] sep_comma_example [14:26:59] ====================== [PASSED] args ======================= [14:26:59] =================== xe_pci (3 subtests) ==================== [14:26:59] ==================== check_graphics_ip ==================== [14:26:59] [PASSED] 12.00 Xe_LP [14:26:59] [PASSED] 12.10 Xe_LP+ [14:26:59] [PASSED] 12.55 Xe_HPG [14:26:59] [PASSED] 12.60 Xe_HPC [14:26:59] [PASSED] 12.70 Xe_LPG [14:26:59] [PASSED] 12.71 Xe_LPG [14:26:59] [PASSED] 12.74 Xe_LPG+ [14:26:59] [PASSED] 20.01 Xe2_HPG [14:26:59] [PASSED] 20.02 Xe2_HPG [14:26:59] [PASSED] 20.04 Xe2_LPG [14:26:59] [PASSED] 30.00 Xe3_LPG [14:26:59] [PASSED] 30.01 Xe3_LPG [14:26:59] [PASSED] 30.03 Xe3_LPG [14:26:59] ================ [PASSED] check_graphics_ip ================ [14:26:59] ===================== check_media_ip ====================== [14:26:59] [PASSED] 12.00 Xe_M [14:26:59] [PASSED] 12.55 Xe_HPM [14:26:59] [PASSED] 13.00 Xe_LPM+ [14:26:59] [PASSED] 13.01 Xe2_HPM [14:26:59] [PASSED] 20.00 Xe2_LPM [14:26:59] [PASSED] 30.00 Xe3_LPM [14:26:59] [PASSED] 30.02 Xe3_LPM [14:26:59] ================= [PASSED] check_media_ip ================== [14:26:59] ================= check_platform_gt_count ================= [14:26:59] [PASSED] 0x9A60 (TIGERLAKE) [14:26:59] [PASSED] 0x9A68 (TIGERLAKE) [14:26:59] [PASSED] 0x9A70 (TIGERLAKE) [14:26:59] [PASSED] 0x9A40 (TIGERLAKE) [14:26:59] [PASSED] 0x9A49 (TIGERLAKE) [14:26:59] [PASSED] 0x9A59 (TIGERLAKE) [14:26:59] [PASSED] 0x9A78 (TIGERLAKE) [14:26:59] [PASSED] 0x9AC0 (TIGERLAKE) [14:26:59] [PASSED] 0x9AC9 (TIGERLAKE) [14:26:59] [PASSED] 0x9AD9 (TIGERLAKE) [14:26:59] [PASSED] 0x9AF8 (TIGERLAKE) [14:26:59] [PASSED] 0x4C80 (ROCKETLAKE) [14:26:59] [PASSED] 0x4C8A (ROCKETLAKE) [14:26:59] [PASSED] 0x4C8B (ROCKETLAKE) [14:26:59] [PASSED] 0x4C8C (ROCKETLAKE) [14:26:59] [PASSED] 0x4C90 (ROCKETLAKE) [14:26:59] [PASSED] 0x4C9A (ROCKETLAKE) [14:26:59] [PASSED] 0x4680 (ALDERLAKE_S) [14:26:59] [PASSED] 0x4682 (ALDERLAKE_S) [14:26:59] [PASSED] 0x4688 (ALDERLAKE_S) [14:26:59] [PASSED] 0x468A (ALDERLAKE_S) [14:26:59] [PASSED] 0x468B (ALDERLAKE_S) [14:26:59] [PASSED] 0x4690 (ALDERLAKE_S) [14:26:59] [PASSED] 0x4692 (ALDERLAKE_S) [14:26:59] [PASSED] 0x4693 (ALDERLAKE_S) [14:26:59] [PASSED] 0x46A0 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46A1 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46A2 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46A3 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46A6 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46A8 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46AA (ALDERLAKE_P) [14:26:59] [PASSED] 0x462A (ALDERLAKE_P) [14:26:59] [PASSED] 0x4626 (ALDERLAKE_P) [14:26:59] [PASSED] 0x4628 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46B0 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46B1 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46B2 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46B3 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46C0 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46C1 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46C2 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46C3 (ALDERLAKE_P) [14:26:59] [PASSED] 0x46D0 (ALDERLAKE_N) [14:26:59] [PASSED] 0x46D1 (ALDERLAKE_N) [14:26:59] [PASSED] 0x46D2 (ALDERLAKE_N) [14:26:59] [PASSED] 0x46D3 (ALDERLAKE_N) [14:26:59] [PASSED] 0x46D4 (ALDERLAKE_N) [14:26:59] [PASSED] 0xA721 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7A1 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7A9 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7AC (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7AD (ALDERLAKE_P) [14:26:59] [PASSED] 0xA720 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7A0 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7A8 (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7AA (ALDERLAKE_P) [14:26:59] [PASSED] 0xA7AB (ALDERLAKE_P) [14:26:59] [PASSED] 0xA780 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA781 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA782 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA783 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA788 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA789 (ALDERLAKE_S) [14:26:59] [PASSED] 0xA78A (ALDERLAKE_S) [14:26:59] [PASSED] 0xA78B (ALDERLAKE_S) [14:26:59] [PASSED] 0x4905 (DG1) [14:26:59] [PASSED] 0x4906 (DG1) [14:26:59] [PASSED] 0x4907 (DG1) [14:26:59] [PASSED] 0x4908 (DG1) [14:26:59] [PASSED] 0x4909 (DG1) [14:26:59] [PASSED] 0x56C0 (DG2) [14:26:59] [PASSED] 0x56C2 (DG2) [14:26:59] [PASSED] 0x56C1 (DG2) [14:26:59] [PASSED] 0x7D51 (METEORLAKE) [14:26:59] [PASSED] 0x7DD1 (METEORLAKE) [14:26:59] [PASSED] 0x7D41 (METEORLAKE) [14:26:59] [PASSED] 0x7D67 (METEORLAKE) [14:26:59] [PASSED] 0xB640 (METEORLAKE) [14:26:59] [PASSED] 0x56A0 (DG2) [14:26:59] [PASSED] 0x56A1 (DG2) [14:26:59] [PASSED] 0x56A2 (DG2) [14:26:59] [PASSED] 0x56BE (DG2) [14:26:59] [PASSED] 0x56BF (DG2) [14:26:59] [PASSED] 0x5690 (DG2) [14:26:59] [PASSED] 0x5691 (DG2) [14:26:59] [PASSED] 0x5692 (DG2) [14:26:59] [PASSED] 0x56A5 (DG2) [14:26:59] [PASSED] 0x56A6 (DG2) [14:26:59] [PASSED] 0x56B0 (DG2) [14:26:59] [PASSED] 0x56B1 (DG2) [14:26:59] [PASSED] 0x56BA (DG2) [14:26:59] [PASSED] 0x56BB (DG2) [14:26:59] [PASSED] 0x56BC (DG2) [14:26:59] [PASSED] 0x56BD (DG2) [14:26:59] [PASSED] 0x5693 (DG2) [14:26:59] [PASSED] 0x5694 (DG2) [14:26:59] [PASSED] 0x5695 (DG2) [14:26:59] [PASSED] 0x56A3 (DG2) [14:26:59] [PASSED] 0x56A4 (DG2) [14:26:59] [PASSED] 0x56B2 (DG2) [14:26:59] [PASSED] 0x56B3 (DG2) [14:26:59] [PASSED] 0x5696 (DG2) [14:26:59] [PASSED] 0x5697 (DG2) [14:26:59] [PASSED] 0xB69 (PVC) [14:26:59] [PASSED] 0xB6E (PVC) [14:26:59] [PASSED] 0xBD4 (PVC) [14:26:59] [PASSED] 0xBD5 (PVC) [14:26:59] [PASSED] 0xBD6 (PVC) [14:26:59] [PASSED] 0xBD7 (PVC) [14:26:59] [PASSED] 0xBD8 (PVC) [14:26:59] [PASSED] 0xBD9 (PVC) [14:26:59] [PASSED] 0xBDA (PVC) [14:26:59] [PASSED] 0xBDB (PVC) [14:26:59] [PASSED] 0xBE0 (PVC) [14:26:59] [PASSED] 0xBE1 (PVC) [14:26:59] [PASSED] 0xBE5 (PVC) [14:26:59] [PASSED] 0x7D40 (METEORLAKE) [14:26:59] [PASSED] 0x7D45 (METEORLAKE) [14:26:59] [PASSED] 0x7D55 (METEORLAKE) [14:26:59] [PASSED] 0x7D60 (METEORLAKE) [14:26:59] [PASSED] 0x7DD5 (METEORLAKE) [14:26:59] [PASSED] 0x6420 (LUNARLAKE) [14:26:59] [PASSED] 0x64A0 (LUNARLAKE) [14:26:59] [PASSED] 0x64B0 (LUNARLAKE) [14:26:59] [PASSED] 0xE202 (BATTLEMAGE) [14:26:59] [PASSED] 0xE209 (BATTLEMAGE) [14:26:59] [PASSED] 0xE20B (BATTLEMAGE) [14:26:59] [PASSED] 0xE20C (BATTLEMAGE) [14:26:59] [PASSED] 0xE20D (BATTLEMAGE) [14:26:59] [PASSED] 0xE210 (BATTLEMAGE) [14:26:59] [PASSED] 0xE211 (BATTLEMAGE) [14:26:59] [PASSED] 0xE212 (BATTLEMAGE) [14:26:59] [PASSED] 0xE216 (BATTLEMAGE) [14:26:59] [PASSED] 0xE220 (BATTLEMAGE) [14:26:59] [PASSED] 0xE221 (BATTLEMAGE) [14:26:59] [PASSED] 0xE222 (BATTLEMAGE) [14:26:59] [PASSED] 0xE223 (BATTLEMAGE) [14:26:59] [PASSED] 0xB080 (PANTHERLAKE) [14:26:59] [PASSED] 0xB081 (PANTHERLAKE) [14:26:59] [PASSED] 0xB082 (PANTHERLAKE) [14:26:59] [PASSED] 0xB083 (PANTHERLAKE) [14:26:59] [PASSED] 0xB084 (PANTHERLAKE) [14:26:59] [PASSED] 0xB085 (PANTHERLAKE) [14:26:59] [PASSED] 0xB086 (PANTHERLAKE) [14:26:59] [PASSED] 0xB087 (PANTHERLAKE) [14:26:59] [PASSED] 0xB08F (PANTHERLAKE) [14:26:59] [PASSED] 0xB090 (PANTHERLAKE) [14:26:59] [PASSED] 0xB0A0 (PANTHERLAKE) [14:26:59] [PASSED] 0xB0B0 (PANTHERLAKE) [14:26:59] [PASSED] 0xFD80 (PANTHERLAKE) [14:26:59] [PASSED] 0xFD81 (PANTHERLAKE) [14:26:59] ============= [PASSED] check_platform_gt_count ============= [14:26:59] ===================== [PASSED] xe_pci ====================== [14:26:59] =================== xe_rtp (2 subtests) ==================== [14:26:59] =============== xe_rtp_process_to_sr_tests ================ [14:26:59] [PASSED] coalesce-same-reg [14:26:59] [PASSED] no-match-no-add [14:26:59] [PASSED] match-or [14:26:59] [PASSED] match-or-xfail [14:26:59] [PASSED] no-match-no-add-multiple-rules [14:26:59] [PASSED] two-regs-two-entries [14:26:59] [PASSED] clr-one-set-other [14:26:59] [PASSED] set-field [14:26:59] [PASSED] conflict-duplicate [14:26:59] [PASSED] conflict-not-disjoint [14:26:59] [PASSED] conflict-reg-type [14:26:59] =========== [PASSED] xe_rtp_process_to_sr_tests ============ [14:26:59] ================== xe_rtp_process_tests =================== [14:26:59] [PASSED] active1 [14:26:59] [PASSED] active2 [14:26:59] [PASSED] active-inactive [14:26:59] [PASSED] inactive-active [14:26:59] [PASSED] inactive-1st_or_active-inactive [14:26:59] [PASSED] inactive-2nd_or_active-inactive [14:26:59] [PASSED] inactive-last_or_active-inactive [14:26:59] [PASSED] inactive-no_or_active-inactive [14:26:59] ============== [PASSED] xe_rtp_process_tests =============== [14:26:59] ===================== [PASSED] xe_rtp ====================== [14:26:59] ==================== xe_wa (1 subtest) ===================== [14:26:59] ======================== xe_wa_gt ========================= [14:26:59] [PASSED] TIGERLAKE B0 [14:26:59] [PASSED] DG1 A0 [14:26:59] [PASSED] DG1 B0 [14:26:59] [PASSED] ALDERLAKE_S A0 [14:26:59] [PASSED] ALDERLAKE_S B0 stty: 'standard input': Inappropriate ioctl for device [14:26:59] [PASSED] ALDERLAKE_S C0 [14:26:59] [PASSED] ALDERLAKE_S D0 [14:26:59] [PASSED] ALDERLAKE_P A0 [14:26:59] [PASSED] ALDERLAKE_P B0 [14:26:59] [PASSED] ALDERLAKE_P C0 [14:26:59] [PASSED] ALDERLAKE_S RPLS D0 [14:26:59] [PASSED] ALDERLAKE_P RPLU E0 [14:26:59] [PASSED] DG2 G10 C0 [14:26:59] [PASSED] DG2 G11 B1 [14:26:59] [PASSED] DG2 G12 A1 [14:26:59] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0 [14:26:59] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0 [14:26:59] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0 [14:26:59] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0 [14:26:59] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0 [14:26:59] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1 [14:26:59] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0 [14:26:59] ==================== [PASSED] xe_wa_gt ===================== [14:26:59] ====================== [PASSED] xe_wa ====================== [14:26:59] ============================================================ [14:26:59] Testing complete. Ran 306 tests: passed: 288, skipped: 18 [14:26:59] Elapsed time: 67.602s total, 7.048s configuring, 59.984s building, 0.543s running + /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig [14:26:59] Configuring KUnit Kernel ... Regenerating .config ... Populating config with: $ make ARCH=um O=.kunit olddefconfig [14:27:02] Building KUnit Kernel ... Populating config with: $ make ARCH=um O=.kunit olddefconfig Building with: $ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48 [14:27:50] Starting KUnit Kernel (1/1)... [14:27:50] ============================================================ Running tests with: $ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt [14:27:50] ============ drm_test_pick_cmdline (2 subtests) ============ [14:27:50] [PASSED] drm_test_pick_cmdline_res_1920_1080_60 [14:27:50] =============== drm_test_pick_cmdline_named =============== [14:27:50] [PASSED] NTSC [14:27:50] [PASSED] NTSC-J [14:27:50] [PASSED] PAL [14:27:50] [PASSED] PAL-M [14:27:50] =========== [PASSED] drm_test_pick_cmdline_named =========== [14:27:50] ============== [PASSED] drm_test_pick_cmdline ============== [14:27:50] == drm_test_atomic_get_connector_for_encoder (1 subtest) === [14:27:50] [PASSED] drm_test_drm_atomic_get_connector_for_encoder [14:27:50] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ==== [14:27:50] =========== drm_validate_clone_mode (2 subtests) =========== [14:27:50] ============== drm_test_check_in_clone_mode =============== [14:27:50] [PASSED] in_clone_mode [14:27:50] [PASSED] not_in_clone_mode [14:27:50] ========== [PASSED] drm_test_check_in_clone_mode =========== [14:27:50] =============== drm_test_check_valid_clones =============== [14:27:50] [PASSED] not_in_clone_mode [14:27:50] [PASSED] valid_clone [14:27:50] [PASSED] invalid_clone [14:27:50] =========== [PASSED] drm_test_check_valid_clones =========== [14:27:50] ============= [PASSED] drm_validate_clone_mode ============= [14:27:50] ============= drm_validate_modeset (1 subtest) ============= [14:27:50] [PASSED] drm_test_check_connector_changed_modeset [14:27:50] ============== [PASSED] drm_validate_modeset =============== [14:27:50] ====== drm_test_bridge_get_current_state (2 subtests) ====== [14:27:50] [PASSED] drm_test_drm_bridge_get_current_state_atomic [14:27:50] [PASSED] drm_test_drm_bridge_get_current_state_legacy [14:27:50] ======== [PASSED] drm_test_bridge_get_current_state ======== [14:27:50] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ====== [14:27:50] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic [14:27:50] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled [14:27:50] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy [14:27:50] ======== [PASSED] drm_test_bridge_helper_reset_crtc ======== [14:27:50] ============== drm_bridge_alloc (2 subtests) =============== [14:27:50] [PASSED] drm_test_drm_bridge_alloc_basic [14:27:50] [PASSED] drm_test_drm_bridge_alloc_get_put [14:27:50] ================ [PASSED] drm_bridge_alloc ================= [14:27:50] ================== drm_buddy (8 subtests) ================== [14:27:50] [PASSED] drm_test_buddy_alloc_limit [14:27:50] [PASSED] drm_test_buddy_alloc_optimistic [14:27:50] [PASSED] drm_test_buddy_alloc_pessimistic [14:27:50] [PASSED] drm_test_buddy_alloc_pathological [14:27:50] [PASSED] drm_test_buddy_alloc_contiguous [14:27:50] [PASSED] drm_test_buddy_alloc_clear [14:27:51] [PASSED] drm_test_buddy_alloc_range_bias [14:27:51] [PASSED] drm_test_buddy_fragmentation_performance [14:27:51] ==================== [PASSED] drm_buddy ==================== [14:27:51] ============= drm_cmdline_parser (40 subtests) ============= [14:27:51] [PASSED] drm_test_cmdline_force_d_only [14:27:51] [PASSED] drm_test_cmdline_force_D_only_dvi [14:27:51] [PASSED] drm_test_cmdline_force_D_only_hdmi [14:27:51] [PASSED] drm_test_cmdline_force_D_only_not_digital [14:27:51] [PASSED] drm_test_cmdline_force_e_only [14:27:51] [PASSED] drm_test_cmdline_res [14:27:51] [PASSED] drm_test_cmdline_res_vesa [14:27:51] [PASSED] drm_test_cmdline_res_vesa_rblank [14:27:51] [PASSED] drm_test_cmdline_res_rblank [14:27:51] [PASSED] drm_test_cmdline_res_bpp [14:27:51] [PASSED] drm_test_cmdline_res_refresh [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_margins [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital [14:27:51] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on [14:27:51] [PASSED] drm_test_cmdline_res_margins_force_on [14:27:51] [PASSED] drm_test_cmdline_res_vesa_margins [14:27:51] [PASSED] drm_test_cmdline_name [14:27:51] [PASSED] drm_test_cmdline_name_bpp [14:27:51] [PASSED] drm_test_cmdline_name_option [14:27:51] [PASSED] drm_test_cmdline_name_bpp_option [14:27:51] [PASSED] drm_test_cmdline_rotate_0 [14:27:51] [PASSED] drm_test_cmdline_rotate_90 [14:27:51] [PASSED] drm_test_cmdline_rotate_180 [14:27:51] [PASSED] drm_test_cmdline_rotate_270 [14:27:51] [PASSED] drm_test_cmdline_hmirror [14:27:51] [PASSED] drm_test_cmdline_vmirror [14:27:51] [PASSED] drm_test_cmdline_margin_options [14:27:51] [PASSED] drm_test_cmdline_multiple_options [14:27:51] [PASSED] drm_test_cmdline_bpp_extra_and_option [14:27:51] [PASSED] drm_test_cmdline_extra_and_option [14:27:51] [PASSED] drm_test_cmdline_freestanding_options [14:27:51] [PASSED] drm_test_cmdline_freestanding_force_e_and_options [14:27:51] [PASSED] drm_test_cmdline_panel_orientation [14:27:51] ================ drm_test_cmdline_invalid ================= [14:27:51] [PASSED] margin_only [14:27:51] [PASSED] interlace_only [14:27:51] [PASSED] res_missing_x [14:27:51] [PASSED] res_missing_y [14:27:51] [PASSED] res_bad_y [14:27:51] [PASSED] res_missing_y_bpp [14:27:51] [PASSED] res_bad_bpp [14:27:51] [PASSED] res_bad_refresh [14:27:51] [PASSED] res_bpp_refresh_force_on_off [14:27:51] [PASSED] res_invalid_mode [14:27:51] [PASSED] res_bpp_wrong_place_mode [14:27:51] [PASSED] name_bpp_refresh [14:27:51] [PASSED] name_refresh [14:27:51] [PASSED] name_refresh_wrong_mode [14:27:51] [PASSED] name_refresh_invalid_mode [14:27:51] [PASSED] rotate_multiple [14:27:51] [PASSED] rotate_invalid_val [14:27:51] [PASSED] rotate_truncated [14:27:51] [PASSED] invalid_option [14:27:51] [PASSED] invalid_tv_option [14:27:51] [PASSED] truncated_tv_option [14:27:51] ============ [PASSED] drm_test_cmdline_invalid ============= [14:27:51] =============== drm_test_cmdline_tv_options =============== [14:27:51] [PASSED] NTSC [14:27:51] [PASSED] NTSC_443 [14:27:51] [PASSED] NTSC_J [14:27:51] [PASSED] PAL [14:27:51] [PASSED] PAL_M [14:27:51] [PASSED] PAL_N [14:27:51] [PASSED] SECAM [14:27:51] [PASSED] MONO_525 [14:27:51] [PASSED] MONO_625 [14:27:51] =========== [PASSED] drm_test_cmdline_tv_options =========== [14:27:51] =============== [PASSED] drm_cmdline_parser ================ [14:27:51] ========== drmm_connector_hdmi_init (20 subtests) ========== [14:27:51] [PASSED] drm_test_connector_hdmi_init_valid [14:27:51] [PASSED] drm_test_connector_hdmi_init_bpc_8 [14:27:51] [PASSED] drm_test_connector_hdmi_init_bpc_10 [14:27:51] [PASSED] drm_test_connector_hdmi_init_bpc_12 [14:27:51] [PASSED] drm_test_connector_hdmi_init_bpc_invalid [14:27:51] [PASSED] drm_test_connector_hdmi_init_bpc_null [14:27:51] [PASSED] drm_test_connector_hdmi_init_formats_empty [14:27:51] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb [14:27:51] === drm_test_connector_hdmi_init_formats_yuv420_allowed === [14:27:51] [PASSED] supported_formats=0x9 yuv420_allowed=1 [14:27:51] [PASSED] supported_formats=0x9 yuv420_allowed=0 [14:27:51] [PASSED] supported_formats=0x3 yuv420_allowed=1 [14:27:51] [PASSED] supported_formats=0x3 yuv420_allowed=0 [14:27:51] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed === [14:27:51] [PASSED] drm_test_connector_hdmi_init_null_ddc [14:27:51] [PASSED] drm_test_connector_hdmi_init_null_product [14:27:51] [PASSED] drm_test_connector_hdmi_init_null_vendor [14:27:51] [PASSED] drm_test_connector_hdmi_init_product_length_exact [14:27:51] [PASSED] drm_test_connector_hdmi_init_product_length_too_long [14:27:51] [PASSED] drm_test_connector_hdmi_init_product_valid [14:27:51] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact [14:27:51] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long [14:27:51] [PASSED] drm_test_connector_hdmi_init_vendor_valid [14:27:51] ========= drm_test_connector_hdmi_init_type_valid ========= [14:27:51] [PASSED] HDMI-A [14:27:51] [PASSED] HDMI-B [14:27:51] ===== [PASSED] drm_test_connector_hdmi_init_type_valid ===== [14:27:51] ======== drm_test_connector_hdmi_init_type_invalid ======== [14:27:51] [PASSED] Unknown [14:27:51] [PASSED] VGA [14:27:51] [PASSED] DVI-I [14:27:51] [PASSED] DVI-D [14:27:51] [PASSED] DVI-A [14:27:51] [PASSED] Composite [14:27:51] [PASSED] SVIDEO [14:27:51] [PASSED] LVDS [14:27:51] [PASSED] Component [14:27:51] [PASSED] DIN [14:27:51] [PASSED] DP [14:27:51] [PASSED] TV [14:27:51] [PASSED] eDP [14:27:51] [PASSED] Virtual [14:27:51] [PASSED] DSI [14:27:51] [PASSED] DPI [14:27:51] [PASSED] Writeback [14:27:51] [PASSED] SPI [14:27:51] [PASSED] USB [14:27:51] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ==== [14:27:51] ============ [PASSED] drmm_connector_hdmi_init ============= [14:27:51] ============= drmm_connector_init (3 subtests) ============= [14:27:51] [PASSED] drm_test_drmm_connector_init [14:27:51] [PASSED] drm_test_drmm_connector_init_null_ddc [14:27:51] ========= drm_test_drmm_connector_init_type_valid ========= [14:27:51] [PASSED] Unknown [14:27:51] [PASSED] VGA [14:27:51] [PASSED] DVI-I [14:27:51] [PASSED] DVI-D [14:27:51] [PASSED] DVI-A [14:27:51] [PASSED] Composite [14:27:51] [PASSED] SVIDEO [14:27:51] [PASSED] LVDS [14:27:51] [PASSED] Component [14:27:51] [PASSED] DIN [14:27:51] [PASSED] DP [14:27:51] [PASSED] HDMI-A [14:27:51] [PASSED] HDMI-B [14:27:51] [PASSED] TV [14:27:51] [PASSED] eDP [14:27:51] [PASSED] Virtual [14:27:51] [PASSED] DSI [14:27:51] [PASSED] DPI [14:27:51] [PASSED] Writeback [14:27:51] [PASSED] SPI [14:27:51] [PASSED] USB [14:27:51] ===== [PASSED] drm_test_drmm_connector_init_type_valid ===== [14:27:51] =============== [PASSED] drmm_connector_init =============== [14:27:51] ========= drm_connector_dynamic_init (6 subtests) ========== [14:27:51] [PASSED] drm_test_drm_connector_dynamic_init [14:27:51] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc [14:27:51] [PASSED] drm_test_drm_connector_dynamic_init_not_added [14:27:51] [PASSED] drm_test_drm_connector_dynamic_init_properties [14:27:51] ===== drm_test_drm_connector_dynamic_init_type_valid ====== [14:27:51] [PASSED] Unknown [14:27:51] [PASSED] VGA [14:27:51] [PASSED] DVI-I [14:27:51] [PASSED] DVI-D [14:27:51] [PASSED] DVI-A [14:27:51] [PASSED] Composite [14:27:51] [PASSED] SVIDEO [14:27:51] [PASSED] LVDS [14:27:51] [PASSED] Component [14:27:51] [PASSED] DIN [14:27:51] [PASSED] DP [14:27:51] [PASSED] HDMI-A [14:27:51] [PASSED] HDMI-B [14:27:51] [PASSED] TV [14:27:51] [PASSED] eDP [14:27:51] [PASSED] Virtual [14:27:51] [PASSED] DSI [14:27:51] [PASSED] DPI [14:27:51] [PASSED] Writeback [14:27:51] [PASSED] SPI [14:27:51] [PASSED] USB [14:27:51] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid == [14:27:51] ======== drm_test_drm_connector_dynamic_init_name ========= [14:27:51] [PASSED] Unknown [14:27:51] [PASSED] VGA [14:27:51] [PASSED] DVI-I [14:27:51] [PASSED] DVI-D [14:27:51] [PASSED] DVI-A [14:27:51] [PASSED] Composite [14:27:51] [PASSED] SVIDEO [14:27:51] [PASSED] LVDS [14:27:51] [PASSED] Component [14:27:51] [PASSED] DIN [14:27:51] [PASSED] DP [14:27:51] [PASSED] HDMI-A [14:27:51] [PASSED] HDMI-B [14:27:51] [PASSED] TV [14:27:51] [PASSED] eDP [14:27:51] [PASSED] Virtual [14:27:51] [PASSED] DSI [14:27:51] [PASSED] DPI [14:27:51] [PASSED] Writeback [14:27:51] [PASSED] SPI [14:27:51] [PASSED] USB [14:27:51] ==== [PASSED] drm_test_drm_connector_dynamic_init_name ===== [14:27:51] =========== [PASSED] drm_connector_dynamic_init ============ [14:27:51] ==== drm_connector_dynamic_register_early (4 subtests) ===== [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_early_defer [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object [14:27:51] ====== [PASSED] drm_connector_dynamic_register_early ======= [14:27:51] ======= drm_connector_dynamic_register (7 subtests) ======== [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_on_list [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_no_defer [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_no_init [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_mode_object [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_sysfs [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name [14:27:51] [PASSED] drm_test_drm_connector_dynamic_register_debugfs [14:27:51] ========= [PASSED] drm_connector_dynamic_register ========== [14:27:51] = drm_connector_attach_broadcast_rgb_property (2 subtests) = [14:27:51] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property [14:27:51] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector [14:27:51] === [PASSED] drm_connector_attach_broadcast_rgb_property === [14:27:51] ========== drm_get_tv_mode_from_name (2 subtests) ========== [14:27:51] ========== drm_test_get_tv_mode_from_name_valid =========== [14:27:51] [PASSED] NTSC [14:27:51] [PASSED] NTSC-443 [14:27:51] [PASSED] NTSC-J [14:27:51] [PASSED] PAL [14:27:51] [PASSED] PAL-M [14:27:51] [PASSED] PAL-N [14:27:51] [PASSED] SECAM [14:27:51] [PASSED] Mono [14:27:51] ====== [PASSED] drm_test_get_tv_mode_from_name_valid ======= [14:27:51] [PASSED] drm_test_get_tv_mode_from_name_truncated [14:27:51] ============ [PASSED] drm_get_tv_mode_from_name ============ [14:27:51] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) = [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1 [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1 [14:27:51] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double [14:27:51] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid = [14:27:51] [PASSED] VIC 96 [14:27:51] [PASSED] VIC 97 [14:27:51] [PASSED] VIC 101 [14:27:51] [PASSED] VIC 102 [14:27:51] [PASSED] VIC 106 [14:27:51] [PASSED] VIC 107 [14:27:51] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid === [14:27:51] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc [14:27:51] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc [14:27:51] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc [14:27:51] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc [14:27:51] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc [14:27:51] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ==== [14:27:51] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) == [14:27:51] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ==== [14:27:51] [PASSED] Automatic [14:27:51] [PASSED] Full [14:27:51] [PASSED] Limited 16:235 [14:27:51] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name === [14:27:51] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid [14:27:51] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ==== [14:27:51] == drm_hdmi_connector_get_output_format_name (2 subtests) == [14:27:51] === drm_test_drm_hdmi_connector_get_output_format_name ==== [14:27:51] [PASSED] RGB [14:27:51] [PASSED] YUV 4:2:0 [14:27:51] [PASSED] YUV 4:2:2 [14:27:51] [PASSED] YUV 4:4:4 [14:27:51] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name === [14:27:51] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid [14:27:51] ==== [PASSED] drm_hdmi_connector_get_output_format_name ==== [14:27:51] ============= drm_damage_helper (21 subtests) ============== [14:27:51] [PASSED] drm_test_damage_iter_no_damage [14:27:51] [PASSED] drm_test_damage_iter_no_damage_fractional_src [14:27:51] [PASSED] drm_test_damage_iter_no_damage_src_moved [14:27:51] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved [14:27:51] [PASSED] drm_test_damage_iter_no_damage_not_visible [14:27:51] [PASSED] drm_test_damage_iter_no_damage_no_crtc [14:27:51] [PASSED] drm_test_damage_iter_no_damage_no_fb [14:27:51] [PASSED] drm_test_damage_iter_simple_damage [14:27:51] [PASSED] drm_test_damage_iter_single_damage [14:27:51] [PASSED] drm_test_damage_iter_single_damage_intersect_src [14:27:51] [PASSED] drm_test_damage_iter_single_damage_outside_src [14:27:51] [PASSED] drm_test_damage_iter_single_damage_fractional_src [14:27:51] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src [14:27:51] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src [14:27:51] [PASSED] drm_test_damage_iter_single_damage_src_moved [14:27:51] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved [14:27:51] [PASSED] drm_test_damage_iter_damage [14:27:51] [PASSED] drm_test_damage_iter_damage_one_intersect [14:27:51] [PASSED] drm_test_damage_iter_damage_one_outside [14:27:51] [PASSED] drm_test_damage_iter_damage_src_moved [14:27:51] [PASSED] drm_test_damage_iter_damage_not_visible [14:27:51] ================ [PASSED] drm_damage_helper ================ [14:27:51] ============== drm_dp_mst_helper (3 subtests) ============== [14:27:51] ============== drm_test_dp_mst_calc_pbn_mode ============== [14:27:51] [PASSED] Clock 154000 BPP 30 DSC disabled [14:27:51] [PASSED] Clock 234000 BPP 30 DSC disabled [14:27:51] [PASSED] Clock 297000 BPP 24 DSC disabled [14:27:51] [PASSED] Clock 332880 BPP 24 DSC enabled [14:27:51] [PASSED] Clock 324540 BPP 24 DSC enabled [14:27:51] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ========== [14:27:51] ============== drm_test_dp_mst_calc_pbn_div =============== [14:27:51] [PASSED] Link rate 2000000 lane count 4 [14:27:51] [PASSED] Link rate 2000000 lane count 2 [14:27:51] [PASSED] Link rate 2000000 lane count 1 [14:27:51] [PASSED] Link rate 1350000 lane count 4 [14:27:51] [PASSED] Link rate 1350000 lane count 2 [14:27:51] [PASSED] Link rate 1350000 lane count 1 [14:27:51] [PASSED] Link rate 1000000 lane count 4 [14:27:51] [PASSED] Link rate 1000000 lane count 2 [14:27:51] [PASSED] Link rate 1000000 lane count 1 [14:27:51] [PASSED] Link rate 810000 lane count 4 [14:27:51] [PASSED] Link rate 810000 lane count 2 [14:27:51] [PASSED] Link rate 810000 lane count 1 [14:27:51] [PASSED] Link rate 540000 lane count 4 [14:27:51] [PASSED] Link rate 540000 lane count 2 [14:27:51] [PASSED] Link rate 540000 lane count 1 [14:27:51] [PASSED] Link rate 270000 lane count 4 [14:27:51] [PASSED] Link rate 270000 lane count 2 [14:27:51] [PASSED] Link rate 270000 lane count 1 [14:27:51] [PASSED] Link rate 162000 lane count 4 [14:27:51] [PASSED] Link rate 162000 lane count 2 [14:27:51] [PASSED] Link rate 162000 lane count 1 [14:27:51] ========== [PASSED] drm_test_dp_mst_calc_pbn_div =========== [14:27:51] ========= drm_test_dp_mst_sideband_msg_req_decode ========= [14:27:51] [PASSED] DP_ENUM_PATH_RESOURCES with port number [14:27:51] [PASSED] DP_POWER_UP_PHY with port number [14:27:51] [PASSED] DP_POWER_DOWN_PHY with port number [14:27:51] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks [14:27:51] [PASSED] DP_ALLOCATE_PAYLOAD with port number [14:27:51] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI [14:27:51] [PASSED] DP_ALLOCATE_PAYLOAD with PBN [14:27:51] [PASSED] DP_QUERY_PAYLOAD with port number [14:27:51] [PASSED] DP_QUERY_PAYLOAD with VCPI [14:27:51] [PASSED] DP_REMOTE_DPCD_READ with port number [14:27:51] [PASSED] DP_REMOTE_DPCD_READ with DPCD address [14:27:51] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes [14:27:51] [PASSED] DP_REMOTE_DPCD_WRITE with port number [14:27:51] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address [14:27:51] [PASSED] DP_REMOTE_DPCD_WRITE with data array [14:27:51] [PASSED] DP_REMOTE_I2C_READ with port number [14:27:51] [PASSED] DP_REMOTE_I2C_READ with I2C device ID [14:27:51] [PASSED] DP_REMOTE_I2C_READ with transactions array [14:27:51] [PASSED] DP_REMOTE_I2C_WRITE with port number [14:27:51] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID [14:27:51] [PASSED] DP_REMOTE_I2C_WRITE with data array [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior [14:27:51] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior [14:27:51] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode ===== [14:27:51] ================ [PASSED] drm_dp_mst_helper ================ [14:27:51] ================== drm_exec (7 subtests) =================== [14:27:51] [PASSED] sanitycheck [14:27:51] [PASSED] test_lock [14:27:51] [PASSED] test_lock_unlock [14:27:51] [PASSED] test_duplicates [14:27:51] [PASSED] test_prepare [14:27:51] [PASSED] test_prepare_array [14:27:51] [PASSED] test_multiple_loops [14:27:51] ==================== [PASSED] drm_exec ===================== [14:27:51] =========== drm_format_helper_test (17 subtests) =========== [14:27:51] ============== drm_test_fb_xrgb8888_to_gray8 ============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ========== [14:27:51] ============= drm_test_fb_xrgb8888_to_rgb332 ============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ========== [14:27:51] ============= drm_test_fb_xrgb8888_to_rgb565 ============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ========== [14:27:51] ============ drm_test_fb_xrgb8888_to_xrgb1555 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 ========= [14:27:51] ============ drm_test_fb_xrgb8888_to_argb1555 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 ========= [14:27:51] ============ drm_test_fb_xrgb8888_to_rgba5551 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 ========= [14:27:51] ============= drm_test_fb_xrgb8888_to_rgb888 ============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ========== [14:27:51] ============= drm_test_fb_xrgb8888_to_bgr888 ============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ========== [14:27:51] ============ drm_test_fb_xrgb8888_to_argb8888 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 ========= [14:27:51] =========== drm_test_fb_xrgb8888_to_xrgb2101010 =========== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 ======= [14:27:51] =========== drm_test_fb_xrgb8888_to_argb2101010 =========== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 ======= [14:27:51] ============== drm_test_fb_xrgb8888_to_mono =============== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ========== [PASSED] drm_test_fb_xrgb8888_to_mono =========== [14:27:51] ==================== drm_test_fb_swab ===================== [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ================ [PASSED] drm_test_fb_swab ================= [14:27:51] ============ drm_test_fb_xrgb8888_to_xbgr8888 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 ========= [14:27:51] ============ drm_test_fb_xrgb8888_to_abgr8888 ============= [14:27:51] [PASSED] single_pixel_source_buffer [14:27:51] [PASSED] single_pixel_clip_rectangle [14:27:51] [PASSED] well_known_colors [14:27:51] [PASSED] destination_pitch [14:27:51] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 ========= [14:27:51] ================= drm_test_fb_clip_offset ================= [14:27:51] [PASSED] pass through [14:27:51] [PASSED] horizontal offset [14:27:51] [PASSED] vertical offset [14:27:51] [PASSED] horizontal and vertical offset [14:27:51] [PASSED] horizontal offset (custom pitch) [14:27:51] [PASSED] vertical offset (custom pitch) [14:27:51] [PASSED] horizontal and vertical offset (custom pitch) [14:27:51] ============= [PASSED] drm_test_fb_clip_offset ============= [14:27:51] =================== drm_test_fb_memcpy ==================== [14:27:51] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258) [14:27:51] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258) [14:27:51] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559) [14:27:51] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258) [14:27:51] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258) [14:27:51] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559) [14:27:51] [PASSED] well_known_colors: XB24 little-endian (0x34324258) [14:27:51] [PASSED] well_known_colors: XRA8 little-endian (0x38415258) [14:27:51] [PASSED] well_known_colors: YU24 little-endian (0x34325559) [14:27:51] [PASSED] destination_pitch: XB24 little-endian (0x34324258) [14:27:51] [PASSED] destination_pitch: XRA8 little-endian (0x38415258) [14:27:51] [PASSED] destination_pitch: YU24 little-endian (0x34325559) [14:27:51] =============== [PASSED] drm_test_fb_memcpy ================ [14:27:51] ============= [PASSED] drm_format_helper_test ============== [14:27:51] ================= drm_format (18 subtests) ================= [14:27:51] [PASSED] drm_test_format_block_width_invalid [14:27:51] [PASSED] drm_test_format_block_width_one_plane [14:27:51] [PASSED] drm_test_format_block_width_two_plane [14:27:51] [PASSED] drm_test_format_block_width_three_plane [14:27:51] [PASSED] drm_test_format_block_width_tiled [14:27:51] [PASSED] drm_test_format_block_height_invalid [14:27:51] [PASSED] drm_test_format_block_height_one_plane [14:27:51] [PASSED] drm_test_format_block_height_two_plane [14:27:51] [PASSED] drm_test_format_block_height_three_plane [14:27:51] [PASSED] drm_test_format_block_height_tiled [14:27:51] [PASSED] drm_test_format_min_pitch_invalid [14:27:51] [PASSED] drm_test_format_min_pitch_one_plane_8bpp [14:27:51] [PASSED] drm_test_format_min_pitch_one_plane_16bpp [14:27:51] [PASSED] drm_test_format_min_pitch_one_plane_24bpp [14:27:51] [PASSED] drm_test_format_min_pitch_one_plane_32bpp [14:27:51] [PASSED] drm_test_format_min_pitch_two_plane [14:27:51] [PASSED] drm_test_format_min_pitch_three_plane_8bpp [14:27:51] [PASSED] drm_test_format_min_pitch_tiled [14:27:51] =================== [PASSED] drm_format ==================== [14:27:51] ============== drm_framebuffer (10 subtests) =============== [14:27:51] ========== drm_test_framebuffer_check_src_coords ========== [14:27:51] [PASSED] Success: source fits into fb [14:27:51] [PASSED] Fail: overflowing fb with x-axis coordinate [14:27:51] [PASSED] Fail: overflowing fb with y-axis coordinate [14:27:51] [PASSED] Fail: overflowing fb with source width [14:27:51] [PASSED] Fail: overflowing fb with source height [14:27:51] ====== [PASSED] drm_test_framebuffer_check_src_coords ====== [14:27:51] [PASSED] drm_test_framebuffer_cleanup [14:27:51] =============== drm_test_framebuffer_create =============== [14:27:51] [PASSED] ABGR8888 normal sizes [14:27:51] [PASSED] ABGR8888 max sizes [14:27:51] [PASSED] ABGR8888 pitch greater than min required [14:27:51] [PASSED] ABGR8888 pitch less than min required [14:27:51] [PASSED] ABGR8888 Invalid width [14:27:51] [PASSED] ABGR8888 Invalid buffer handle [14:27:51] [PASSED] No pixel format [14:27:51] [PASSED] ABGR8888 Width 0 [14:27:51] [PASSED] ABGR8888 Height 0 [14:27:51] [PASSED] ABGR8888 Out of bound height * pitch combination [14:27:51] [PASSED] ABGR8888 Large buffer offset [14:27:51] [PASSED] ABGR8888 Buffer offset for inexistent plane [14:27:51] [PASSED] ABGR8888 Invalid flag [14:27:51] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers [14:27:51] [PASSED] ABGR8888 Valid buffer modifier [14:27:51] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE) [14:27:51] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] NV12 Normal sizes [14:27:51] [PASSED] NV12 Max sizes [14:27:51] [PASSED] NV12 Invalid pitch [14:27:51] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag [14:27:51] [PASSED] NV12 different modifier per-plane [14:27:51] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE [14:27:51] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] NV12 Modifier for inexistent plane [14:27:51] [PASSED] NV12 Handle for inexistent plane [14:27:51] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier [14:27:51] [PASSED] YVU420 Normal sizes [14:27:51] [PASSED] YVU420 Max sizes [14:27:51] [PASSED] YVU420 Invalid pitch [14:27:51] [PASSED] YVU420 Different pitches [14:27:51] [PASSED] YVU420 Different buffer offsets/pitches [14:27:51] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS [14:27:51] [PASSED] YVU420 Valid modifier [14:27:51] [PASSED] YVU420 Different modifiers per plane [14:27:51] [PASSED] YVU420 Modifier for inexistent plane [14:27:51] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR) [14:27:51] [PASSED] X0L2 Normal sizes [14:27:51] [PASSED] X0L2 Max sizes [14:27:51] [PASSED] X0L2 Invalid pitch [14:27:51] [PASSED] X0L2 Pitch greater than minimum required [14:27:51] [PASSED] X0L2 Handle for inexistent plane [14:27:51] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set [14:27:51] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set [14:27:51] [PASSED] X0L2 Valid modifier [14:27:51] [PASSED] X0L2 Modifier for inexistent plane [14:27:51] =========== [PASSED] drm_test_framebuffer_create =========== [14:27:51] [PASSED] drm_test_framebuffer_free [14:27:51] [PASSED] drm_test_framebuffer_init [14:27:51] [PASSED] drm_test_framebuffer_init_bad_format [14:27:51] [PASSED] drm_test_framebuffer_init_dev_mismatch [14:27:51] [PASSED] drm_test_framebuffer_lookup [14:27:51] [PASSED] drm_test_framebuffer_lookup_inexistent [14:27:51] [PASSED] drm_test_framebuffer_modifiers_not_supported [14:27:51] ================= [PASSED] drm_framebuffer ================= [14:27:51] ================ drm_gem_shmem (8 subtests) ================ [14:27:51] [PASSED] drm_gem_shmem_test_obj_create [14:27:51] [PASSED] drm_gem_shmem_test_obj_create_private [14:27:51] [PASSED] drm_gem_shmem_test_pin_pages [14:27:51] [PASSED] drm_gem_shmem_test_vmap [14:27:51] [PASSED] drm_gem_shmem_test_get_pages_sgt [14:27:51] [PASSED] drm_gem_shmem_test_get_sg_table [14:27:51] [PASSED] drm_gem_shmem_test_madvise [14:27:51] [PASSED] drm_gem_shmem_test_purge [14:27:51] ================== [PASSED] drm_gem_shmem ================== [14:27:51] === drm_atomic_helper_connector_hdmi_check (27 subtests) === [14:27:51] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode [14:27:51] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1 [14:27:51] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode [14:27:51] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1 [14:27:51] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode [14:27:51] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1 [14:27:51] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420 ======= [14:27:51] [PASSED] Automatic [14:27:51] [PASSED] Full [14:27:51] [PASSED] Limited 16:235 [14:27:51] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 === [14:27:51] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed [14:27:51] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed [14:27:51] [PASSED] drm_test_check_disable_connector [14:27:51] [PASSED] drm_test_check_hdmi_funcs_reject_rate [14:27:51] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb [14:27:51] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420 [14:27:51] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422 [14:27:51] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420 [14:27:51] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420 [14:27:51] [PASSED] drm_test_check_output_bpc_crtc_mode_changed [14:27:51] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed [14:27:51] [PASSED] drm_test_check_output_bpc_dvi [14:27:51] [PASSED] drm_test_check_output_bpc_format_vic_1 [14:27:51] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only [14:27:51] [PASSED] drm_test_check_output_bpc_format_display_rgb_only [14:27:51] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only [14:27:51] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only [14:27:51] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc [14:27:51] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc [14:27:51] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc [14:27:51] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ====== [14:27:51] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ==== [14:27:51] [PASSED] drm_test_check_broadcast_rgb_value [14:27:51] [PASSED] drm_test_check_bpc_8_value [14:27:51] [PASSED] drm_test_check_bpc_10_value [14:27:51] [PASSED] drm_test_check_bpc_12_value [14:27:51] [PASSED] drm_test_check_format_value [14:27:51] [PASSED] drm_test_check_tmds_char_value [14:27:51] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ====== [14:27:51] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) = [14:27:51] [PASSED] drm_test_check_mode_valid [14:27:51] [PASSED] drm_test_check_mode_valid_reject [14:27:51] [PASSED] drm_test_check_mode_valid_reject_rate [14:27:51] [PASSED] drm_test_check_mode_valid_reject_max_clock [14:27:51] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid === [14:27:51] ================= drm_managed (2 subtests) ================= [14:27:51] [PASSED] drm_test_managed_release_action [14:27:51] [PASSED] drm_test_managed_run_action [14:27:51] =================== [PASSED] drm_managed =================== [14:27:51] =================== drm_mm (6 subtests) ==================== [14:27:51] [PASSED] drm_test_mm_init [14:27:51] [PASSED] drm_test_mm_debug [14:27:51] [PASSED] drm_test_mm_align32 [14:27:51] [PASSED] drm_test_mm_align64 [14:27:51] [PASSED] drm_test_mm_lowest [14:27:51] [PASSED] drm_test_mm_highest [14:27:51] ===================== [PASSED] drm_mm ====================== [14:27:51] ============= drm_modes_analog_tv (5 subtests) ============= [14:27:51] [PASSED] drm_test_modes_analog_tv_mono_576i [14:27:51] [PASSED] drm_test_modes_analog_tv_ntsc_480i [14:27:51] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined [14:27:51] [PASSED] drm_test_modes_analog_tv_pal_576i [14:27:51] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined [14:27:51] =============== [PASSED] drm_modes_analog_tv =============== [14:27:51] ============== drm_plane_helper (2 subtests) =============== [14:27:51] =============== drm_test_check_plane_state ================ [14:27:51] [PASSED] clipping_simple [14:27:51] [PASSED] clipping_rotate_reflect [14:27:51] [PASSED] positioning_simple [14:27:51] [PASSED] upscaling [14:27:51] [PASSED] downscaling [14:27:51] [PASSED] rounding1 [14:27:51] [PASSED] rounding2 [14:27:51] [PASSED] rounding3 [14:27:51] [PASSED] rounding4 [14:27:51] =========== [PASSED] drm_test_check_plane_state ============ [14:27:51] =========== drm_test_check_invalid_plane_state ============ [14:27:51] [PASSED] positioning_invalid [14:27:51] [PASSED] upscaling_invalid [14:27:51] [PASSED] downscaling_invalid [14:27:51] ======= [PASSED] drm_test_check_invalid_plane_state ======== [14:27:51] ================ [PASSED] drm_plane_helper ================= [14:27:51] ====== drm_connector_helper_tv_get_modes (1 subtest) ======= [14:27:51] ====== drm_test_connector_helper_tv_get_modes_check ======= [14:27:51] [PASSED] None [14:27:51] [PASSED] PAL [14:27:51] [PASSED] NTSC [14:27:51] [PASSED] Both, NTSC Default [14:27:51] [PASSED] Both, PAL Default [14:27:51] [PASSED] Both, NTSC Default, with PAL on command-line [14:27:51] [PASSED] Both, PAL Default, with NTSC on command-line [14:27:51] == [PASSED] drm_test_connector_helper_tv_get_modes_check === [14:27:51] ======== [PASSED] drm_connector_helper_tv_get_modes ======== [14:27:51] ================== drm_rect (9 subtests) =================== [14:27:51] [PASSED] drm_test_rect_clip_scaled_div_by_zero [14:27:51] [PASSED] drm_test_rect_clip_scaled_not_clipped [14:27:51] [PASSED] drm_test_rect_clip_scaled_clipped [14:27:51] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned [14:27:51] ================= drm_test_rect_intersect ================= [14:27:51] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0 [14:27:51] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1 [14:27:51] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0 [14:27:51] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1 [14:27:51] [PASSED] right x left: 2x1+0+0 x 3x1+1+0 [14:27:51] [PASSED] left x right: 3x1+1+0 x 2x1+0+0 [14:27:51] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1 [14:27:51] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0 [14:27:51] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1 [14:27:51] [PASSED] touching side: 1x1+0+0 x 1x1+1+0 [14:27:51] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0 [14:27:51] [PASSED] inside another: 2x2+0+0 x 1x1+1+1 [14:27:51] [PASSED] far away: 1x1+0+0 x 1x1+3+6 [14:27:51] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10 [14:27:51] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10 [14:27:51] ============= [PASSED] drm_test_rect_intersect ============= [14:27:51] ================ drm_test_rect_calc_hscale ================ [14:27:51] [PASSED] normal use [14:27:51] [PASSED] out of max range [14:27:51] [PASSED] out of min range [14:27:51] [PASSED] zero dst [14:27:51] [PASSED] negative src [14:27:51] [PASSED] negative dst [14:27:51] ============ [PASSED] drm_test_rect_calc_hscale ============ [14:27:51] ================ drm_test_rect_calc_vscale ================ [14:27:51] [PASSED] normal use stty: 'standard input': Inappropriate ioctl for device [14:27:51] [PASSED] out of max range [14:27:51] [PASSED] out of min range [14:27:51] [PASSED] zero dst [14:27:51] [PASSED] negative src [14:27:51] [PASSED] negative dst [14:27:51] ============ [PASSED] drm_test_rect_calc_vscale ============ [14:27:51] ================== drm_test_rect_rotate =================== [14:27:51] [PASSED] reflect-x [14:27:51] [PASSED] reflect-y [14:27:51] [PASSED] rotate-0 [14:27:51] [PASSED] rotate-90 [14:27:51] [PASSED] rotate-180 [14:27:51] [PASSED] rotate-270 [14:27:51] ============== [PASSED] drm_test_rect_rotate =============== [14:27:51] ================ drm_test_rect_rotate_inv ================= [14:27:51] [PASSED] reflect-x [14:27:51] [PASSED] reflect-y [14:27:51] [PASSED] rotate-0 [14:27:51] [PASSED] rotate-90 [14:27:51] [PASSED] rotate-180 [14:27:51] [PASSED] rotate-270 [14:27:51] ============ [PASSED] drm_test_rect_rotate_inv ============= [14:27:51] ==================== [PASSED] drm_rect ===================== [14:27:51] ============ drm_sysfb_modeset_test (1 subtest) ============ [14:27:51] ============ drm_test_sysfb_build_fourcc_list ============= [14:27:51] [PASSED] no native formats [14:27:51] [PASSED] XRGB8888 as native format [14:27:51] [PASSED] remove duplicates [14:27:51] [PASSED] convert alpha formats [14:27:51] [PASSED] random formats [14:27:51] ======== [PASSED] drm_test_sysfb_build_fourcc_list ========= [14:27:51] ============= [PASSED] drm_sysfb_modeset_test ============== [14:27:51] ============================================================ [14:27:51] Testing complete. Ran 622 tests: passed: 622 [14:27:51] Elapsed time: 51.724s total, 2.596s configuring, 48.398s building, 0.664s running + /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig [14:27:51] Configuring KUnit Kernel ... Regenerating .config ... Populating config with: $ make ARCH=um O=.kunit olddefconfig [14:27:54] Building KUnit Kernel ... Populating config with: $ make ARCH=um O=.kunit olddefconfig Building with: $ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48 [14:28:10] Starting KUnit Kernel (1/1)... [14:28:10] ============================================================ Running tests with: $ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt [14:28:10] ================= ttm_device (5 subtests) ================== [14:28:10] [PASSED] ttm_device_init_basic [14:28:10] [PASSED] ttm_device_init_multiple [14:28:10] [PASSED] ttm_device_fini_basic [14:28:10] [PASSED] ttm_device_init_no_vma_man [14:28:10] ================== ttm_device_init_pools ================== [14:28:10] [PASSED] No DMA allocations, no DMA32 required [14:28:10] [PASSED] DMA allocations, DMA32 required [14:28:10] [PASSED] No DMA allocations, DMA32 required [14:28:10] [PASSED] DMA allocations, no DMA32 required [14:28:10] ============== [PASSED] ttm_device_init_pools ============== [14:28:10] =================== [PASSED] ttm_device ==================== [14:28:10] ================== ttm_pool (8 subtests) =================== [14:28:10] ================== ttm_pool_alloc_basic =================== [14:28:10] [PASSED] One page [14:28:10] [PASSED] More than one page [14:28:10] [PASSED] Above the allocation limit [14:28:10] [PASSED] One page, with coherent DMA mappings enabled [14:28:10] [PASSED] Above the allocation limit, with coherent DMA mappings enabled [14:28:10] ============== [PASSED] ttm_pool_alloc_basic =============== [14:28:10] ============== ttm_pool_alloc_basic_dma_addr ============== [14:28:10] [PASSED] One page [14:28:10] [PASSED] More than one page [14:28:10] [PASSED] Above the allocation limit [14:28:10] [PASSED] One page, with coherent DMA mappings enabled [14:28:10] [PASSED] Above the allocation limit, with coherent DMA mappings enabled [14:28:10] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ========== [14:28:10] [PASSED] ttm_pool_alloc_order_caching_match [14:28:10] [PASSED] ttm_pool_alloc_caching_mismatch [14:28:10] [PASSED] ttm_pool_alloc_order_mismatch [14:28:10] [PASSED] ttm_pool_free_dma_alloc [14:28:10] [PASSED] ttm_pool_free_no_dma_alloc [14:28:10] [PASSED] ttm_pool_fini_basic [14:28:10] ==================== [PASSED] ttm_pool ===================== [14:28:10] ================ ttm_resource (8 subtests) ================= [14:28:10] ================= ttm_resource_init_basic ================= [14:28:10] [PASSED] Init resource in TTM_PL_SYSTEM [14:28:10] [PASSED] Init resource in TTM_PL_VRAM [14:28:10] [PASSED] Init resource in a private placement [14:28:10] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags [14:28:10] ============= [PASSED] ttm_resource_init_basic ============= [14:28:10] [PASSED] ttm_resource_init_pinned [14:28:10] [PASSED] ttm_resource_fini_basic [14:28:10] [PASSED] ttm_resource_manager_init_basic [14:28:10] [PASSED] ttm_resource_manager_usage_basic [14:28:10] [PASSED] ttm_resource_manager_set_used_basic [14:28:10] [PASSED] ttm_sys_man_alloc_basic [14:28:10] [PASSED] ttm_sys_man_free_basic [14:28:10] ================== [PASSED] ttm_resource =================== [14:28:10] =================== ttm_tt (15 subtests) =================== [14:28:10] ==================== ttm_tt_init_basic ==================== [14:28:10] [PASSED] Page-aligned size [14:28:10] [PASSED] Extra pages requested [14:28:10] ================ [PASSED] ttm_tt_init_basic ================ [14:28:10] [PASSED] ttm_tt_init_misaligned [14:28:10] [PASSED] ttm_tt_fini_basic [14:28:10] [PASSED] ttm_tt_fini_sg [14:28:10] [PASSED] ttm_tt_fini_shmem [14:28:10] [PASSED] ttm_tt_create_basic [14:28:10] [PASSED] ttm_tt_create_invalid_bo_type [14:28:10] [PASSED] ttm_tt_create_ttm_exists [14:28:10] [PASSED] ttm_tt_create_failed [14:28:10] [PASSED] ttm_tt_destroy_basic [14:28:10] [PASSED] ttm_tt_populate_null_ttm [14:28:10] [PASSED] ttm_tt_populate_populated_ttm [14:28:10] [PASSED] ttm_tt_unpopulate_basic [14:28:10] [PASSED] ttm_tt_unpopulate_empty_ttm [14:28:10] [PASSED] ttm_tt_swapin_basic [14:28:10] ===================== [PASSED] ttm_tt ====================== [14:28:10] =================== ttm_bo (14 subtests) =================== [14:28:10] =========== ttm_bo_reserve_optimistic_no_ticket =========== [14:28:10] [PASSED] Cannot be interrupted and sleeps [14:28:10] [PASSED] Cannot be interrupted, locks straight away [14:28:10] [PASSED] Can be interrupted, sleeps [14:28:10] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket ======= [14:28:10] [PASSED] ttm_bo_reserve_locked_no_sleep [14:28:10] [PASSED] ttm_bo_reserve_no_wait_ticket [14:28:10] [PASSED] ttm_bo_reserve_double_resv [14:28:10] [PASSED] ttm_bo_reserve_interrupted [14:28:10] [PASSED] ttm_bo_reserve_deadlock [14:28:10] [PASSED] ttm_bo_unreserve_basic [14:28:10] [PASSED] ttm_bo_unreserve_pinned [14:28:10] [PASSED] ttm_bo_unreserve_bulk [14:28:10] [PASSED] ttm_bo_fini_basic [14:28:10] [PASSED] ttm_bo_fini_shared_resv [14:28:10] [PASSED] ttm_bo_pin_basic [14:28:10] [PASSED] ttm_bo_pin_unpin_resource [14:28:10] [PASSED] ttm_bo_multiple_pin_one_unpin [14:28:10] ===================== [PASSED] ttm_bo ====================== [14:28:10] ============== ttm_bo_validate (21 subtests) =============== [14:28:10] ============== ttm_bo_init_reserved_sys_man =============== [14:28:10] [PASSED] Buffer object for userspace [14:28:10] [PASSED] Kernel buffer object [14:28:10] [PASSED] Shared buffer object [14:28:10] ========== [PASSED] ttm_bo_init_reserved_sys_man =========== [14:28:10] ============== ttm_bo_init_reserved_mock_man ============== [14:28:10] [PASSED] Buffer object for userspace [14:28:10] [PASSED] Kernel buffer object [14:28:10] [PASSED] Shared buffer object [14:28:10] ========== [PASSED] ttm_bo_init_reserved_mock_man ========== [14:28:10] [PASSED] ttm_bo_init_reserved_resv [14:28:10] ================== ttm_bo_validate_basic ================== [14:28:10] [PASSED] Buffer object for userspace [14:28:10] [PASSED] Kernel buffer object [14:28:10] [PASSED] Shared buffer object [14:28:10] ============== [PASSED] ttm_bo_validate_basic ============== [14:28:10] [PASSED] ttm_bo_validate_invalid_placement [14:28:10] ============= ttm_bo_validate_same_placement ============== [14:28:10] [PASSED] System manager [14:28:10] [PASSED] VRAM manager [14:28:10] ========= [PASSED] ttm_bo_validate_same_placement ========== [14:28:10] [PASSED] ttm_bo_validate_failed_alloc [14:28:10] [PASSED] ttm_bo_validate_pinned [14:28:10] [PASSED] ttm_bo_validate_busy_placement [14:28:10] ================ ttm_bo_validate_multihop ================= [14:28:10] [PASSED] Buffer object for userspace [14:28:10] [PASSED] Kernel buffer object [14:28:10] [PASSED] Shared buffer object [14:28:10] ============ [PASSED] ttm_bo_validate_multihop ============= [14:28:10] ========== ttm_bo_validate_no_placement_signaled ========== [14:28:10] [PASSED] Buffer object in system domain, no page vector [14:28:10] [PASSED] Buffer object in system domain with an existing page vector [14:28:10] ====== [PASSED] ttm_bo_validate_no_placement_signaled ====== [14:28:10] ======== ttm_bo_validate_no_placement_not_signaled ======== [14:28:10] [PASSED] Buffer object for userspace [14:28:10] [PASSED] Kernel buffer object [14:28:10] [PASSED] Shared buffer object [14:28:10] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ==== [14:28:10] [PASSED] ttm_bo_validate_move_fence_signaled [14:28:10] ========= ttm_bo_validate_move_fence_not_signaled ========= [14:28:10] [PASSED] Waits for GPU [14:28:10] [PASSED] Tries to lock straight away [14:28:10] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled ===== [14:28:10] [PASSED] ttm_bo_validate_happy_evict [14:28:10] [PASSED] ttm_bo_validate_all_pinned_evict [14:28:10] [PASSED] ttm_bo_validate_allowed_only_evict [14:28:10] [PASSED] ttm_bo_validate_deleted_evict [14:28:10] [PASSED] ttm_bo_validate_busy_domain_evict [14:28:10] [PASSED] ttm_bo_validate_evict_gutting [14:28:10] [PASSED] ttm_bo_validate_recrusive_evict stty: 'standard input': Inappropriate ioctl for device [14:28:10] ================= [PASSED] ttm_bo_validate ================= [14:28:10] ============================================================ [14:28:10] Testing complete. Ran 101 tests: passed: 101 [14:28:10] Elapsed time: 18.714s total, 2.599s configuring, 15.796s building, 0.261s running + cleanup ++ stat -c %u:%g /kernel + chown -R 1003:1003 /kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v2 1/3] drm/xe: add VM_BIND DECOMPRESS uapi flag 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote 2025-10-13 14:28 ` ✓ CI.KUnit: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork @ 2025-10-13 14:48 ` Nitin Gote 2025-10-13 14:48 ` [PATCH v2 2/3] drm/xe: add xe_migrate_resolve wrapper and is_vram_resolve support Nitin Gote ` (3 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: Nitin Gote @ 2025-10-13 14:48 UTC (permalink / raw) To: intel-xe; +Cc: matthew.brost, matthew.auld, thomas.hellstrom, Nitin Gote Add a new VM_BIND flag, DRM_XE_VM_BIND_FLAG_DECOMPRESS, that lets userspace express intent for the driver to perform on-device in-place decompression for the GPU mapping created by a MAP bind operation. This flag is used by subsequent driver changes to trigger scheduling of GPU work that resolves compressed VRAM pages into an uncompressed PAT VM mapping. Behavior and semantics: - Valid only for DRM_XE_VM_BIND_OP_MAP. IOCTLs using this flag on other ops are rejected (-EINVAL). - The bind's pat_index must select the device "no-compression" PAT entry; otherwise the ioctl is rejected (-EINVAL). - Only meaningful for VRAM-backed BOs on devices that support Flat CCS and the required hardware generation (driver will return -EOPNOTSUPP if not). - On success the driver schedules a migrate/resolve and installs the returned dma_fence into the BO's kernel reservation (DMA_RESV_USAGE_KERNEL). v2: Add kernel doc (Matt) Cc: Matthew Brost <matthew.brost@intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> --- include/uapi/drm/xe_drm.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h index 40ff19f52a8d..07bd63651a7e 100644 --- a/include/uapi/drm/xe_drm.h +++ b/include/uapi/drm/xe_drm.h @@ -1013,6 +1013,13 @@ struct drm_xe_vm_destroy { * valid on VMs with DRM_XE_VM_CREATE_FLAG_FAULT_MODE set. The CPU address * mirror flag are only valid for DRM_XE_VM_BIND_OP_MAP operations, the BO * handle MBZ, and the BO offset MBZ. + * - DRM_XE_VM_BIND_FLAG_DECOMPRESS - Request on-device decompression for a MAP. + * When set on a MAP bind operation, request the driver schedule an on-device + * in-place decompression (via the migrate/resolve path) for the GPU mapping + * created by this bind. Only valid for DRM_XE_VM_BIND_OP_MAP; usage on + * other ops is rejected. The bind's pat_index must select the device's + * "no-compression" PAT. Only meaningful for VRAM-backed BOs on devices that + * support Flat CCS and the required HW generation XE2+. * * The @prefetch_mem_region_instance for %DRM_XE_VM_BIND_OP_PREFETCH can also be: * - %DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC, which ensures prefetching occurs in @@ -1119,6 +1126,7 @@ struct drm_xe_vm_bind_op { #define DRM_XE_VM_BIND_FLAG_DUMPABLE (1 << 3) #define DRM_XE_VM_BIND_FLAG_CHECK_PXP (1 << 4) #define DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR (1 << 5) +#define DRM_XE_VM_BIND_FLAG_DECOMPRESS (1 << 6) /** @flags: Bind flags */ __u32 flags; -- 2.25.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 2/3] drm/xe: add xe_migrate_resolve wrapper and is_vram_resolve support 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote 2025-10-13 14:28 ` ✓ CI.KUnit: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork 2025-10-13 14:48 ` [PATCH v2 1/3] drm/xe: add VM_BIND DECOMPRESS uapi flag Nitin Gote @ 2025-10-13 14:48 ` Nitin Gote 2025-10-13 14:48 ` [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl Nitin Gote ` (2 subsequent siblings) 5 siblings, 0 replies; 9+ messages in thread From: Nitin Gote @ 2025-10-13 14:48 UTC (permalink / raw) To: intel-xe; +Cc: matthew.brost, matthew.auld, thomas.hellstrom, Nitin Gote Introduce an internal __xe_migrate_copy(..., is_vram_resolve) path and expose a small wrapper xe_migrate_resolve() that calls it with is_vram_resolve=true. For resolve/decompression operations we must ensure the copy code uses the compression PAT index when appropriate; this change centralizes that behavior and allows callers to schedule a resolve (decompress) operation via the migrate API. Cc: Matthew Brost <matthew.brost@intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> --- drivers/gpu/drm/xe/xe_migrate.c | 90 +++++++++++++++++++++++---------- drivers/gpu/drm/xe/xe_migrate.h | 7 +++ 2 files changed, 70 insertions(+), 27 deletions(-) diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c index 7345a5b65169..0f86ef33ff1a 100644 --- a/drivers/gpu/drm/xe/xe_migrate.c +++ b/drivers/gpu/drm/xe/xe_migrate.c @@ -764,31 +764,13 @@ static u32 xe_migrate_ccs_copy(struct xe_migrate *m, return flush_flags; } -/** - * xe_migrate_copy() - Copy content of TTM resources. - * @m: The migration context. - * @src_bo: The buffer object @src is currently bound to. - * @dst_bo: If copying between resources created for the same bo, set this to - * the same value as @src_bo. If copying between buffer objects, set it to - * the buffer object @dst is currently bound to. - * @src: The source TTM resource. - * @dst: The dst TTM resource. - * @copy_only_ccs: If true copy only CCS metadata - * - * Copies the contents of @src to @dst: On flat CCS devices, - * the CCS metadata is copied as well if needed, or if not present, - * the CCS metadata of @dst is cleared for security reasons. - * - * Return: Pointer to a dma_fence representing the last copy batch, or - * an error pointer on failure. If there is a failure, any copy operation - * started by the function call has been synced. - */ -struct dma_fence *xe_migrate_copy(struct xe_migrate *m, - struct xe_bo *src_bo, - struct xe_bo *dst_bo, - struct ttm_resource *src, - struct ttm_resource *dst, - bool copy_only_ccs) +static struct dma_fence *__xe_migrate_copy(struct xe_migrate *m, + struct xe_bo *src_bo, + struct xe_bo *dst_bo, + struct ttm_resource *src, + struct ttm_resource *dst, + bool copy_only_ccs, + bool is_vram_resolve) { struct xe_gt *gt = m->tile->primary_gt; struct xe_device *xe = gt_to_xe(gt); @@ -809,8 +791,19 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m, bool copy_ccs = xe_device_has_flat_ccs(xe) && xe_bo_needs_ccs_pages(src_bo) && xe_bo_needs_ccs_pages(dst_bo); bool copy_system_ccs = copy_ccs && (!src_is_vram || !dst_is_vram); - bool use_comp_pat = type_device && xe_device_has_flat_ccs(xe) && - GRAPHICS_VER(xe) >= 20 && src_is_vram && !dst_is_vram; + bool use_comp_pat; + + /* + * For decompression operation, always use the compression PAT index. + * Otherwise, only use the compression PAT index for device memory + * when copying from VRAM to system memory. + */ + if (is_vram_resolve) { + use_comp_pat = true; + } else { + use_comp_pat = type_device && xe_device_has_flat_ccs(xe) && + GRAPHICS_VER(xe) >= 20 && src_is_vram && !dst_is_vram; + } /* Copying CCS between two different BOs is not supported yet. */ if (XE_WARN_ON(copy_ccs && src_bo != dst_bo)) @@ -969,6 +962,49 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m, return fence; } +/** + * xe_migrate_copy() - Copy content of TTM resources. + * @m: The migration context. + * @src_bo: The buffer object @src is currently bound to. + * @dst_bo: If copying between resources created for the same bo, set this to + * the same value as @src_bo. If copying between buffer objects, set it to + * the buffer object @dst is currently bound to. + * @src: The source TTM resource. + * @dst: The dst TTM resource. + * @copy_only_ccs: If true copy only CCS metadata + * + * Copies the contents of @src to @dst: On flat CCS devices, + * the CCS metadata is copied as well if needed, or if not present, + * the CCS metadata of @dst is cleared for security reasons. + * + * Return: Pointer to a dma_fence representing the last copy batch, or + * an error pointer on failure. If there is a failure, any copy operation + * started by the function call has been synced. + */ +struct dma_fence *xe_migrate_copy(struct xe_migrate *m, + struct xe_bo *src_bo, + struct xe_bo *dst_bo, + struct ttm_resource *src, + struct ttm_resource *dst, + bool copy_only_ccs) +{ + return __xe_migrate_copy(m, src_bo, dst_bo, src, dst, copy_only_ccs, false); +} + +/** + * xe_migrate_resolve() - Resolve and decompress a buffer object if required. + * This wrapper forwards to __xe_migrate_copy() with is_vram_resolve=true. + */ +struct dma_fence *xe_migrate_resolve(struct xe_migrate *m, + struct xe_bo *src_bo, + struct xe_bo *dst_bo, + struct ttm_resource *src, + struct ttm_resource *dst, + bool copy_only_ccs) +{ + return __xe_migrate_copy(m, src_bo, dst_bo, src, dst, copy_only_ccs, true); +} + /** * xe_migrate_lrc() - Get the LRC from migrate context. * @migrate: Migrate context. diff --git a/drivers/gpu/drm/xe/xe_migrate.h b/drivers/gpu/drm/xe/xe_migrate.h index 4fad324b6253..ade68ab32a71 100644 --- a/drivers/gpu/drm/xe/xe_migrate.h +++ b/drivers/gpu/drm/xe/xe_migrate.h @@ -125,6 +125,13 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m, struct ttm_resource *dst, bool copy_only_ccs); +struct dma_fence *xe_migrate_resolve(struct xe_migrate *m, + struct xe_bo *src_bo, + struct xe_bo *dst_bo, + struct ttm_resource *src, + struct ttm_resource *dst, + bool copy_only_ccs); + int xe_migrate_ccs_rw_copy(struct xe_tile *tile, struct xe_exec_queue *q, struct xe_bo *src_bo, enum xe_sriov_vf_ccs_rw_ctxs read_write); -- 2.25.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote ` (2 preceding siblings ...) 2025-10-13 14:48 ` [PATCH v2 2/3] drm/xe: add xe_migrate_resolve wrapper and is_vram_resolve support Nitin Gote @ 2025-10-13 14:48 ` Nitin Gote 2025-10-13 16:10 ` Matthew Brost 2025-10-13 15:06 ` ✓ Xe.CI.BAT: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork 2025-10-13 16:28 ` ✓ Xe.CI.Full: " Patchwork 5 siblings, 1 reply; 9+ messages in thread From: Nitin Gote @ 2025-10-13 14:48 UTC (permalink / raw) To: intel-xe; +Cc: matthew.brost, matthew.auld, thomas.hellstrom, Nitin Gote Implement handling of VM_BIND(..., DECOMPRESS) in xe_vm_bind_ioctl. Key changes: - Parse and record per-op intent (op->map.request_decompress) when the DECOMPRESS flag is present. - Validate DECOMPRESS preconditions in the ioctl path: - Only valid for MAP ops. - The provided pat_index must select the device's "no-compression" PAT. - Only meaningful for VRAM-backed BOs on devices with flat CCS and the required XE2+ hardware (reject with -EOPNOTSUPP otherwise). - Use XE_IOCTL_DBG for uAPI sanity checks. - Implement xe_bo_schedule_decompress(): - Locate and invalidate any overlapping VMA. - Schedule an in-place resolve via the migrate/resolve path. - Install the resulting dma_fence into the BO's kernel reservation (DMA_RESV_USAGE_KERNEL). - Wire scheduling into vma_lock_and_validate() so VM_BIND will schedule decompression when request_decompress is set. - Handle fault-mode VMs by performing decompression synchronously during the bind process, ensuring that the resolve is completed before the bind finishes. This schedules an in-place GPU resolve (xe_migrate_resolve) for decompression. v2: - Move decompression work out of vm_bind ioctl. (Matt) - Put that work in a small helper at the BO/migrate layer invoke it from vma_lock_and_validate which already runs under drm_exec. - Move lightweight checks to vm_bind_ioctl_check_args (Matthew Auld) Cc: Matthew Brost <matthew.brost@intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> --- drivers/gpu/drm/xe/xe_bo.c | 53 ++++++++++++++++++++++++++++++++ drivers/gpu/drm/xe/xe_bo.h | 3 ++ drivers/gpu/drm/xe/xe_vm.c | 48 ++++++++++++++++++++--------- drivers/gpu/drm/xe/xe_vm_types.h | 2 ++ 4 files changed, 92 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c index 7b6502081873..e9b28c8462c6 100644 --- a/drivers/gpu/drm/xe/xe_bo.c +++ b/drivers/gpu/drm/xe/xe_bo.c @@ -3307,6 +3307,59 @@ int xe_gem_mmap_offset_ioctl(struct drm_device *dev, void *data, return 0; } +/** + * xe_bo_schedule_decompress - schedule in-place decompress and install fence + * @bo: buffer object (caller should hold drm_exec reservations for VM+BO) + * @vm: VM containing the VMA range + * @addr: start GPU virtual address of the range + * @range:length in bytes of the range + * + * Schedules an in-place resolve via the migrate layer and installs the + * returned dma_fence into the BO kernel reservation slot (DMA_RESV_USAGE_KERNEL). + * Returns 0 on success, negative errno on error. + */ +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, + u64 addr, u64 range) +{ + struct xe_tile *tile = xe_device_get_root_tile(vm->xe); + struct xe_vma *existing_vma = NULL; + struct dma_fence *decomp_fence = NULL; + int err = 0; + + /* Validate buffer is VRAM-backed */ + if (!bo->ttm.resource || !mem_type_is_vram(bo->ttm.resource->mem_type)) { + drm_err(&vm->xe->drm, "Decompression requires VRAM buffer\n"); + return -EINVAL; + } + + /* Find overlapping VMA */ + existing_vma = xe_vm_find_overlapping_vma(vm, addr, range); + if (existing_vma) { + drm_dbg(&vm->xe->drm, + "Found overlapping VMA - automatic invalidation will occur\n"); + + /* Invalidate the VMA */ + err = xe_vm_invalidate_vma(existing_vma); + if (err) + return err; + } + + /* Schedule the in-place decompression */ + decomp_fence = xe_migrate_resolve(tile->migrate, + bo, bo, + bo->ttm.resource, bo->ttm.resource, + false); + + if (IS_ERR(decomp_fence)) + return PTR_ERR(decomp_fence); + + /* Install kernel-usage fence */ + dma_resv_add_fence(bo->ttm.base.resv, decomp_fence, DMA_RESV_USAGE_KERNEL); + dma_fence_put(decomp_fence); + + return 0; +} + /** * xe_bo_lock() - Lock the buffer object's dma_resv object * @bo: The struct xe_bo whose lock is to be taken diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h index 353d607d301d..b5dd8630cde5 100644 --- a/drivers/gpu/drm/xe/xe_bo.h +++ b/drivers/gpu/drm/xe/xe_bo.h @@ -308,6 +308,9 @@ int xe_bo_dumb_create(struct drm_file *file_priv, bool xe_bo_needs_ccs_pages(struct xe_bo *bo); +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, + u64 addr, u64 range); + static inline size_t xe_bo_ccs_pages_start(struct xe_bo *bo) { return PAGE_ALIGN(xe_bo_size(bo)); diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c index 179758ca7cb8..32bc6d899c36 100644 --- a/drivers/gpu/drm/xe/xe_vm.c +++ b/drivers/gpu/drm/xe/xe_vm.c @@ -2304,6 +2304,7 @@ vm_bind_ioctl_ops_create(struct xe_vm *vm, struct xe_vma_ops *vops, op->map.is_cpu_addr_mirror = flags & DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; op->map.dumpable = flags & DRM_XE_VM_BIND_FLAG_DUMPABLE; + op->map.request_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; op->map.pat_index = pat_index; op->map.invalidate_on_bind = __xe_vm_needs_clear_scratch_pages(vm, flags); @@ -2858,7 +2859,7 @@ static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm, } static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, - bool res_evict, bool validate) + bool res_evict, bool validate, bool request_decompress) { struct xe_bo *bo = xe_vma_bo(vma); struct xe_vm *vm = xe_vma_vm(vma); @@ -2871,6 +2872,17 @@ static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, err = xe_bo_validate(bo, vm, !xe_vm_in_preempt_fence_mode(vm) && res_evict, exec); + + if (err) + return err; + + if (request_decompress) { + int ret = xe_bo_schedule_decompress(bo, vm, + xe_vma_start(vma), + xe_vma_size(vma)); + if (ret) + return ret; + } } return err; @@ -2958,7 +2970,8 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, err = vma_lock_and_validate(exec, op->map.vma, res_evict, !xe_vm_in_fault_mode(vm) || - op->map.immediate); + op->map.immediate, + op->map.request_decompress); break; case DRM_GPUVA_OP_REMAP: err = check_ufence(gpuva_to_vma(op->base.remap.unmap->va)); @@ -2967,13 +2980,13 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, err = vma_lock_and_validate(exec, gpuva_to_vma(op->base.remap.unmap->va), - res_evict, false); + res_evict, false, false); if (!err && op->remap.prev) err = vma_lock_and_validate(exec, op->remap.prev, - res_evict, true); + res_evict, true, false); if (!err && op->remap.next) err = vma_lock_and_validate(exec, op->remap.next, - res_evict, true); + res_evict, true, false); break; case DRM_GPUVA_OP_UNMAP: err = check_ufence(gpuva_to_vma(op->base.unmap.va)); @@ -2982,7 +2995,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, err = vma_lock_and_validate(exec, gpuva_to_vma(op->base.unmap.va), - res_evict, false); + res_evict, false, false); break; case DRM_GPUVA_OP_PREFETCH: { @@ -2997,7 +3010,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, err = vma_lock_and_validate(exec, gpuva_to_vma(op->base.prefetch.va), - res_evict, false); + res_evict, false, false); if (!err && !xe_vma_has_no_bo(vma)) err = xe_bo_migrate(xe_vma_bo(vma), region_to_mem_type[region], @@ -3305,7 +3318,8 @@ ALLOW_ERROR_INJECTION(vm_bind_ioctl_ops_execute, ERRNO); DRM_XE_VM_BIND_FLAG_NULL | \ DRM_XE_VM_BIND_FLAG_DUMPABLE | \ DRM_XE_VM_BIND_FLAG_CHECK_PXP | \ - DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR) + DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR | \ + DRM_XE_VM_BIND_FLAG_DECOMPRESS) #ifdef TEST_VM_OPS_ERROR #define SUPPORTED_FLAGS (SUPPORTED_FLAGS_STUB | FORCE_OP_ERROR) @@ -3322,7 +3336,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, { int err; int i; - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) return -EINVAL; @@ -3363,9 +3376,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, bool is_null = flags & DRM_XE_VM_BIND_FLAG_NULL; bool is_cpu_addr_mirror = flags & DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; + bool is_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; u16 pat_index = (*bind_ops)[i].pat_index; u16 coh_mode; - if (XE_IOCTL_DBG(xe, is_cpu_addr_mirror && (!xe_vm_in_fault_mode(vm) || !IS_ENABLED(CONFIG_DRM_XE_GPUSVM)))) { @@ -3397,7 +3410,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, XE_IOCTL_DBG(xe, obj_offset && (is_null || is_cpu_addr_mirror)) || XE_IOCTL_DBG(xe, op != DRM_XE_VM_BIND_OP_MAP && - (is_null || is_cpu_addr_mirror)) || + (is_decompress || is_null || is_cpu_addr_mirror)) || + XE_IOCTL_DBG(xe, is_decompress && + pat_index == xe->pat.idx[XE_CACHE_NONE_COMPRESSION]) || XE_IOCTL_DBG(xe, !obj && op == DRM_XE_VM_BIND_OP_MAP && !is_null && !is_cpu_addr_mirror) || @@ -3417,8 +3432,8 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, op == DRM_XE_VM_BIND_OP_PREFETCH) || XE_IOCTL_DBG(xe, prefetch_region && op != DRM_XE_VM_BIND_OP_PREFETCH) || - XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && - !(BIT(prefetch_region) & xe->info.mem_region_mask))) || + XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && + !(BIT(prefetch_region) & xe->info.mem_region_mask))) || XE_IOCTL_DBG(xe, obj && op == DRM_XE_VM_BIND_OP_UNMAP)) { err = -EINVAL; @@ -3433,6 +3448,12 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, err = -EINVAL; goto free_bind_ops; } + + if (is_decompress && (XE_IOCTL_DBG(xe, !xe_device_has_flat_ccs(xe)) || + XE_IOCTL_DBG(xe, GRAPHICS_VER(xe) < 20))) { + err = -EOPNOTSUPP; + goto free_bind_ops; + } } return 0; @@ -3686,7 +3707,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) u64 obj_offset = bind_ops[i].obj_offset; u32 prefetch_region = bind_ops[i].prefetch_mem_region_instance; u16 pat_index = bind_ops[i].pat_index; - ops[i] = vm_bind_ioctl_ops_create(vm, &vops, bos[i], obj_offset, addr, range, op, flags, prefetch_region, pat_index); diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h index 413353e1c225..7d652d17b0dc 100644 --- a/drivers/gpu/drm/xe/xe_vm_types.h +++ b/drivers/gpu/drm/xe/xe_vm_types.h @@ -357,6 +357,8 @@ struct xe_vma_op_map { bool dumpable; /** @invalidate: invalidate the VMA before bind */ bool invalidate_on_bind; + /** @request_decompress: schedule decompression for GPU map */ + bool request_decompress; /** @pat_index: The pat index to use for this operation. */ u16 pat_index; }; -- 2.25.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl 2025-10-13 14:48 ` [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl Nitin Gote @ 2025-10-13 16:10 ` Matthew Brost 2025-10-13 16:12 ` Matthew Brost 0 siblings, 1 reply; 9+ messages in thread From: Matthew Brost @ 2025-10-13 16:10 UTC (permalink / raw) To: Nitin Gote; +Cc: intel-xe, matthew.auld, thomas.hellstrom On Mon, Oct 13, 2025 at 08:18:50PM +0530, Nitin Gote wrote: > Implement handling of VM_BIND(..., DECOMPRESS) in xe_vm_bind_ioctl. > > Key changes: > - Parse and record per-op intent (op->map.request_decompress) when the > DECOMPRESS flag is present. > - Validate DECOMPRESS preconditions in the ioctl path: > - Only valid for MAP ops. > - The provided pat_index must select the device's "no-compression" PAT. > - Only meaningful for VRAM-backed BOs on devices with flat CCS and the > required XE2+ hardware (reject with -EOPNOTSUPP otherwise). > - Use XE_IOCTL_DBG for uAPI sanity checks. > - Implement xe_bo_schedule_decompress(): > - Locate and invalidate any overlapping VMA. > - Schedule an in-place resolve via the migrate/resolve path. > - Install the resulting dma_fence into the BO's kernel reservation > (DMA_RESV_USAGE_KERNEL). > - Wire scheduling into vma_lock_and_validate() so VM_BIND will schedule > decompression when request_decompress is set. > - Handle fault-mode VMs by performing decompression synchronously during > the bind process, ensuring that the resolve is completed before the bind > finishes. > > This schedules an in-place GPU resolve (xe_migrate_resolve) for > decompression. > > v2: > - Move decompression work out of vm_bind ioctl. (Matt) > - Put that work in a small helper at the BO/migrate layer invoke it > from vma_lock_and_validate which already runs under drm_exec. > - Move lightweight checks to vm_bind_ioctl_check_args (Matthew Auld) > > Cc: Matthew Brost <matthew.brost@intel.com> > Cc: Matthew Auld <matthew.auld@intel.com> > Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> > --- > drivers/gpu/drm/xe/xe_bo.c | 53 ++++++++++++++++++++++++++++++++ > drivers/gpu/drm/xe/xe_bo.h | 3 ++ > drivers/gpu/drm/xe/xe_vm.c | 48 ++++++++++++++++++++--------- > drivers/gpu/drm/xe/xe_vm_types.h | 2 ++ > 4 files changed, 92 insertions(+), 14 deletions(-) > > diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c > index 7b6502081873..e9b28c8462c6 100644 > --- a/drivers/gpu/drm/xe/xe_bo.c > +++ b/drivers/gpu/drm/xe/xe_bo.c > @@ -3307,6 +3307,59 @@ int xe_gem_mmap_offset_ioctl(struct drm_device *dev, void *data, > return 0; > } > > +/** > + * xe_bo_schedule_decompress - schedule in-place decompress and install fence > + * @bo: buffer object (caller should hold drm_exec reservations for VM+BO) > + * @vm: VM containing the VMA range > + * @addr: start GPU virtual address of the range > + * @range:length in bytes of the range > + * > + * Schedules an in-place resolve via the migrate layer and installs the > + * returned dma_fence into the BO kernel reservation slot (DMA_RESV_USAGE_KERNEL). > + * Returns 0 on success, negative errno on error. > + */ > +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, s/xe_bo_schedule_decompress/xe_bo_decompress > + u64 addr, u64 range) The caller has the VMA, just pass it in rather than looking it up here but I don't even this the VMA is needed - more on that below. > +{ > + struct xe_tile *tile = xe_device_get_root_tile(vm->xe); > + struct xe_vma *existing_vma = NULL; > + struct dma_fence *decomp_fence = NULL; > + int err = 0; > + > + /* Validate buffer is VRAM-backed */ > + if (!bo->ttm.resource || !mem_type_is_vram(bo->ttm.resource->mem_type)) { > + drm_err(&vm->xe->drm, "Decompression requires VRAM buffer\n"); > + return -EINVAL; > + } I think we should just slightly skip the decrompress step if the BO isn't in VRAM. It is possible we have evicted the BO system memory already behind the user and decrompression isn't required then. > + > + /* Find overlapping VMA */ > + existing_vma = xe_vm_find_overlapping_vma(vm, addr, range); > + if (existing_vma) { See above a lookup isn't required as the caller has the VMA already. > + drm_dbg(&vm->xe->drm, > + "Found overlapping VMA - automatic invalidation will occur\n"); > + > + /* Invalidate the VMA */ > + err = xe_vm_invalidate_vma(existing_vma); xe_vm_invalidate_vma is only valid on faulting VM. I think you want to call xe_bo_move_notify here as that will do all the correct things wrt to invalidtaions. > + if (err) > + return err; > + } > + > + /* Schedule the in-place decompression */ > + decomp_fence = xe_migrate_resolve(tile->migrate, > + bo, bo, > + bo->ttm.resource, bo->ttm.resource, > + false); > + > + if (IS_ERR(decomp_fence)) > + return PTR_ERR(decomp_fence); > + > + /* Install kernel-usage fence */ > + dma_resv_add_fence(bo->ttm.base.resv, decomp_fence, DMA_RESV_USAGE_KERNEL); I believe you need to call dma_resv_reserve_fences before xe_migrate_resolve to ensure dma_resv_add_fence will succeed. > + dma_fence_put(decomp_fence); > + > + return 0; > +} > + > /** > * xe_bo_lock() - Lock the buffer object's dma_resv object > * @bo: The struct xe_bo whose lock is to be taken > diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h > index 353d607d301d..b5dd8630cde5 100644 > --- a/drivers/gpu/drm/xe/xe_bo.h > +++ b/drivers/gpu/drm/xe/xe_bo.h > @@ -308,6 +308,9 @@ int xe_bo_dumb_create(struct drm_file *file_priv, > > bool xe_bo_needs_ccs_pages(struct xe_bo *bo); > > +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, > + u64 addr, u64 range); > + > static inline size_t xe_bo_ccs_pages_start(struct xe_bo *bo) > { > return PAGE_ALIGN(xe_bo_size(bo)); > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > index 179758ca7cb8..32bc6d899c36 100644 > --- a/drivers/gpu/drm/xe/xe_vm.c > +++ b/drivers/gpu/drm/xe/xe_vm.c > @@ -2304,6 +2304,7 @@ vm_bind_ioctl_ops_create(struct xe_vm *vm, struct xe_vma_ops *vops, > op->map.is_cpu_addr_mirror = flags & > DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; > op->map.dumpable = flags & DRM_XE_VM_BIND_FLAG_DUMPABLE; > + op->map.request_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; > op->map.pat_index = pat_index; > op->map.invalidate_on_bind = > __xe_vm_needs_clear_scratch_pages(vm, flags); > @@ -2858,7 +2859,7 @@ static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm, > } > > static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, > - bool res_evict, bool validate) > + bool res_evict, bool validate, bool request_decompress) We have to many bool here but can clean this up in a follow up. > { > struct xe_bo *bo = xe_vma_bo(vma); > struct xe_vm *vm = xe_vma_vm(vma); > @@ -2871,6 +2872,17 @@ static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, > err = xe_bo_validate(bo, vm, > !xe_vm_in_preempt_fence_mode(vm) && > res_evict, exec); > + > + if (err) > + return err; > + > + if (request_decompress) { > + int ret = xe_bo_schedule_decompress(bo, vm, > + xe_vma_start(vma), > + xe_vma_size(vma)); As stated above, start / size are not needed. > + if (ret) > + return ret; > + } I'd write this like: if (request_decompress) err = xe_bo_schedule_decompress(...)) > } > > return err; > @@ -2958,7 +2970,8 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > err = vma_lock_and_validate(exec, op->map.vma, > res_evict, > !xe_vm_in_fault_mode(vm) || > - op->map.immediate); > + op->map.immediate, > + op->map.request_decompress); > break; > case DRM_GPUVA_OP_REMAP: > err = check_ufence(gpuva_to_vma(op->base.remap.unmap->va)); > @@ -2967,13 +2980,13 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > err = vma_lock_and_validate(exec, > gpuva_to_vma(op->base.remap.unmap->va), > - res_evict, false); > + res_evict, false, false); > if (!err && op->remap.prev) > err = vma_lock_and_validate(exec, op->remap.prev, > - res_evict, true); > + res_evict, true, false); > if (!err && op->remap.next) > err = vma_lock_and_validate(exec, op->remap.next, > - res_evict, true); > + res_evict, true, false); > break; > case DRM_GPUVA_OP_UNMAP: > err = check_ufence(gpuva_to_vma(op->base.unmap.va)); > @@ -2982,7 +2995,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > err = vma_lock_and_validate(exec, > gpuva_to_vma(op->base.unmap.va), > - res_evict, false); > + res_evict, false, false); > break; > case DRM_GPUVA_OP_PREFETCH: > { > @@ -2997,7 +3010,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > err = vma_lock_and_validate(exec, > gpuva_to_vma(op->base.prefetch.va), > - res_evict, false); > + res_evict, false, false); > if (!err && !xe_vma_has_no_bo(vma)) > err = xe_bo_migrate(xe_vma_bo(vma), > region_to_mem_type[region], > @@ -3305,7 +3318,8 @@ ALLOW_ERROR_INJECTION(vm_bind_ioctl_ops_execute, ERRNO); > DRM_XE_VM_BIND_FLAG_NULL | \ > DRM_XE_VM_BIND_FLAG_DUMPABLE | \ > DRM_XE_VM_BIND_FLAG_CHECK_PXP | \ > - DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR) > + DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR | \ > + DRM_XE_VM_BIND_FLAG_DECOMPRESS) > > #ifdef TEST_VM_OPS_ERROR > #define SUPPORTED_FLAGS (SUPPORTED_FLAGS_STUB | FORCE_OP_ERROR) > @@ -3322,7 +3336,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > { > int err; > int i; > - No related. > if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > @@ -3363,9 +3376,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > bool is_null = flags & DRM_XE_VM_BIND_FLAG_NULL; > bool is_cpu_addr_mirror = flags & > DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; > + bool is_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; > u16 pat_index = (*bind_ops)[i].pat_index; > u16 coh_mode; > - Not related. > if (XE_IOCTL_DBG(xe, is_cpu_addr_mirror && > (!xe_vm_in_fault_mode(vm) || > !IS_ENABLED(CONFIG_DRM_XE_GPUSVM)))) { > @@ -3397,7 +3410,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > XE_IOCTL_DBG(xe, obj_offset && (is_null || > is_cpu_addr_mirror)) || > XE_IOCTL_DBG(xe, op != DRM_XE_VM_BIND_OP_MAP && > - (is_null || is_cpu_addr_mirror)) || > + (is_decompress || is_null || is_cpu_addr_mirror)) || > + XE_IOCTL_DBG(xe, is_decompress && > + pat_index == xe->pat.idx[XE_CACHE_NONE_COMPRESSION]) || The above check doesn't look right. I think you may to check pat_index against enabling compression and reject it. > XE_IOCTL_DBG(xe, !obj && > op == DRM_XE_VM_BIND_OP_MAP && > !is_null && !is_cpu_addr_mirror) || > @@ -3417,8 +3432,8 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > op == DRM_XE_VM_BIND_OP_PREFETCH) || > XE_IOCTL_DBG(xe, prefetch_region && > op != DRM_XE_VM_BIND_OP_PREFETCH) || > - XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && > - !(BIT(prefetch_region) & xe->info.mem_region_mask))) || > + XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && > + !(BIT(prefetch_region) & xe->info.mem_region_mask))) || Not related but is a good cleanup. > XE_IOCTL_DBG(xe, obj && > op == DRM_XE_VM_BIND_OP_UNMAP)) { > err = -EINVAL; > @@ -3433,6 +3448,12 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > err = -EINVAL; > goto free_bind_ops; > } > + > + if (is_decompress && (XE_IOCTL_DBG(xe, !xe_device_has_flat_ccs(xe)) || > + XE_IOCTL_DBG(xe, GRAPHICS_VER(xe) < 20))) { > + err = -EOPNOTSUPP; > + goto free_bind_ops; > + } > } > > return 0; > @@ -3686,7 +3707,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > u64 obj_offset = bind_ops[i].obj_offset; > u32 prefetch_region = bind_ops[i].prefetch_mem_region_instance; > u16 pat_index = bind_ops[i].pat_index; > - Not related. Matt > ops[i] = vm_bind_ioctl_ops_create(vm, &vops, bos[i], obj_offset, > addr, range, op, flags, > prefetch_region, pat_index); > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > index 413353e1c225..7d652d17b0dc 100644 > --- a/drivers/gpu/drm/xe/xe_vm_types.h > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > @@ -357,6 +357,8 @@ struct xe_vma_op_map { > bool dumpable; > /** @invalidate: invalidate the VMA before bind */ > bool invalidate_on_bind; > + /** @request_decompress: schedule decompression for GPU map */ > + bool request_decompress; > /** @pat_index: The pat index to use for this operation. */ > u16 pat_index; > }; > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl 2025-10-13 16:10 ` Matthew Brost @ 2025-10-13 16:12 ` Matthew Brost 0 siblings, 0 replies; 9+ messages in thread From: Matthew Brost @ 2025-10-13 16:12 UTC (permalink / raw) To: Nitin Gote; +Cc: intel-xe, matthew.auld, thomas.hellstrom On Mon, Oct 13, 2025 at 09:10:18AM -0700, Matthew Brost wrote: > On Mon, Oct 13, 2025 at 08:18:50PM +0530, Nitin Gote wrote: > > Implement handling of VM_BIND(..., DECOMPRESS) in xe_vm_bind_ioctl. > > > > Key changes: > > - Parse and record per-op intent (op->map.request_decompress) when the > > DECOMPRESS flag is present. > > - Validate DECOMPRESS preconditions in the ioctl path: > > - Only valid for MAP ops. > > - The provided pat_index must select the device's "no-compression" PAT. > > - Only meaningful for VRAM-backed BOs on devices with flat CCS and the > > required XE2+ hardware (reject with -EOPNOTSUPP otherwise). > > - Use XE_IOCTL_DBG for uAPI sanity checks. > > - Implement xe_bo_schedule_decompress(): > > - Locate and invalidate any overlapping VMA. > > - Schedule an in-place resolve via the migrate/resolve path. > > - Install the resulting dma_fence into the BO's kernel reservation > > (DMA_RESV_USAGE_KERNEL). > > - Wire scheduling into vma_lock_and_validate() so VM_BIND will schedule > > decompression when request_decompress is set. > > - Handle fault-mode VMs by performing decompression synchronously during > > the bind process, ensuring that the resolve is completed before the bind > > finishes. > > > > This schedules an in-place GPU resolve (xe_migrate_resolve) for > > decompression. > > > > v2: > > - Move decompression work out of vm_bind ioctl. (Matt) > > - Put that work in a small helper at the BO/migrate layer invoke it > > from vma_lock_and_validate which already runs under drm_exec. > > - Move lightweight checks to vm_bind_ioctl_check_args (Matthew Auld) > > > > Cc: Matthew Brost <matthew.brost@intel.com> > > Cc: Matthew Auld <matthew.auld@intel.com> > > Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> > > --- > > drivers/gpu/drm/xe/xe_bo.c | 53 ++++++++++++++++++++++++++++++++ > > drivers/gpu/drm/xe/xe_bo.h | 3 ++ > > drivers/gpu/drm/xe/xe_vm.c | 48 ++++++++++++++++++++--------- > > drivers/gpu/drm/xe/xe_vm_types.h | 2 ++ > > 4 files changed, 92 insertions(+), 14 deletions(-) > > > > diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c > > index 7b6502081873..e9b28c8462c6 100644 > > --- a/drivers/gpu/drm/xe/xe_bo.c > > +++ b/drivers/gpu/drm/xe/xe_bo.c > > @@ -3307,6 +3307,59 @@ int xe_gem_mmap_offset_ioctl(struct drm_device *dev, void *data, > > return 0; > > } > > > > +/** > > + * xe_bo_schedule_decompress - schedule in-place decompress and install fence > > + * @bo: buffer object (caller should hold drm_exec reservations for VM+BO) > > + * @vm: VM containing the VMA range > > + * @addr: start GPU virtual address of the range > > + * @range:length in bytes of the range > > + * > > + * Schedules an in-place resolve via the migrate layer and installs the > > + * returned dma_fence into the BO kernel reservation slot (DMA_RESV_USAGE_KERNEL). > > + * Returns 0 on success, negative errno on error. > > + */ > > +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, > > s/xe_bo_schedule_decompress/xe_bo_decompress > > > + u64 addr, u64 range) > > The caller has the VMA, just pass it in rather than looking it up here > but I don't even this the VMA is needed - more on that below. > > > +{ > > + struct xe_tile *tile = xe_device_get_root_tile(vm->xe); > > + struct xe_vma *existing_vma = NULL; > > + struct dma_fence *decomp_fence = NULL; > > + int err = 0; > > + > > + /* Validate buffer is VRAM-backed */ > > + if (!bo->ttm.resource || !mem_type_is_vram(bo->ttm.resource->mem_type)) { > > + drm_err(&vm->xe->drm, "Decompression requires VRAM buffer\n"); > > + return -EINVAL; > > + } > > I think we should just slightly skip the decrompress step if the BO Typo. s/slightly/silently By silently I mean just return 0. Matt > isn't in VRAM. It is possible we have evicted the BO system memory > already behind the user and decrompression isn't required then. > > > + > > + /* Find overlapping VMA */ > > + existing_vma = xe_vm_find_overlapping_vma(vm, addr, range); > > + if (existing_vma) { > > See above a lookup isn't required as the caller has the VMA already. > > > + drm_dbg(&vm->xe->drm, > > + "Found overlapping VMA - automatic invalidation will occur\n"); > > + > > + /* Invalidate the VMA */ > > + err = xe_vm_invalidate_vma(existing_vma); > > xe_vm_invalidate_vma is only valid on faulting VM. I think you want to > call xe_bo_move_notify here as that will do all the correct things wrt > to invalidtaions. > > > + if (err) > > + return err; > > + } > > + > > + /* Schedule the in-place decompression */ > > + decomp_fence = xe_migrate_resolve(tile->migrate, > > + bo, bo, > > + bo->ttm.resource, bo->ttm.resource, > > + false); > > + > > + if (IS_ERR(decomp_fence)) > > + return PTR_ERR(decomp_fence); > > + > > + /* Install kernel-usage fence */ > > + dma_resv_add_fence(bo->ttm.base.resv, decomp_fence, DMA_RESV_USAGE_KERNEL); > > I believe you need to call dma_resv_reserve_fences before > xe_migrate_resolve to ensure dma_resv_add_fence will succeed. > > > + dma_fence_put(decomp_fence); > > + > > + return 0; > > +} > > + > > /** > > * xe_bo_lock() - Lock the buffer object's dma_resv object > > * @bo: The struct xe_bo whose lock is to be taken > > diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h > > index 353d607d301d..b5dd8630cde5 100644 > > --- a/drivers/gpu/drm/xe/xe_bo.h > > +++ b/drivers/gpu/drm/xe/xe_bo.h > > @@ -308,6 +308,9 @@ int xe_bo_dumb_create(struct drm_file *file_priv, > > > > bool xe_bo_needs_ccs_pages(struct xe_bo *bo); > > > > +int xe_bo_schedule_decompress(struct xe_bo *bo, struct xe_vm *vm, > > + u64 addr, u64 range); > > + > > static inline size_t xe_bo_ccs_pages_start(struct xe_bo *bo) > > { > > return PAGE_ALIGN(xe_bo_size(bo)); > > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > > index 179758ca7cb8..32bc6d899c36 100644 > > --- a/drivers/gpu/drm/xe/xe_vm.c > > +++ b/drivers/gpu/drm/xe/xe_vm.c > > @@ -2304,6 +2304,7 @@ vm_bind_ioctl_ops_create(struct xe_vm *vm, struct xe_vma_ops *vops, > > op->map.is_cpu_addr_mirror = flags & > > DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; > > op->map.dumpable = flags & DRM_XE_VM_BIND_FLAG_DUMPABLE; > > + op->map.request_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; > > op->map.pat_index = pat_index; > > op->map.invalidate_on_bind = > > __xe_vm_needs_clear_scratch_pages(vm, flags); > > @@ -2858,7 +2859,7 @@ static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm, > > } > > > > static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, > > - bool res_evict, bool validate) > > + bool res_evict, bool validate, bool request_decompress) > > We have to many bool here but can clean this up in a follow up. > > > { > > struct xe_bo *bo = xe_vma_bo(vma); > > struct xe_vm *vm = xe_vma_vm(vma); > > @@ -2871,6 +2872,17 @@ static int vma_lock_and_validate(struct drm_exec *exec, struct xe_vma *vma, > > err = xe_bo_validate(bo, vm, > > !xe_vm_in_preempt_fence_mode(vm) && > > res_evict, exec); > > + > > + if (err) > > + return err; > > + > > + if (request_decompress) { > > + int ret = xe_bo_schedule_decompress(bo, vm, > > + xe_vma_start(vma), > > + xe_vma_size(vma)); > > As stated above, start / size are not needed. > > > + if (ret) > > + return ret; > > + } > > > I'd write this like: > > if (request_decompress) > err = xe_bo_schedule_decompress(...)) > > > } > > > > return err; > > @@ -2958,7 +2970,8 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > err = vma_lock_and_validate(exec, op->map.vma, > > res_evict, > > !xe_vm_in_fault_mode(vm) || > > - op->map.immediate); > > + op->map.immediate, > > + op->map.request_decompress); > > break; > > case DRM_GPUVA_OP_REMAP: > > err = check_ufence(gpuva_to_vma(op->base.remap.unmap->va)); > > @@ -2967,13 +2980,13 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > > > err = vma_lock_and_validate(exec, > > gpuva_to_vma(op->base.remap.unmap->va), > > - res_evict, false); > > + res_evict, false, false); > > if (!err && op->remap.prev) > > err = vma_lock_and_validate(exec, op->remap.prev, > > - res_evict, true); > > + res_evict, true, false); > > if (!err && op->remap.next) > > err = vma_lock_and_validate(exec, op->remap.next, > > - res_evict, true); > > + res_evict, true, false); > > break; > > case DRM_GPUVA_OP_UNMAP: > > err = check_ufence(gpuva_to_vma(op->base.unmap.va)); > > @@ -2982,7 +2995,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > > > err = vma_lock_and_validate(exec, > > gpuva_to_vma(op->base.unmap.va), > > - res_evict, false); > > + res_evict, false, false); > > break; > > case DRM_GPUVA_OP_PREFETCH: > > { > > @@ -2997,7 +3010,7 @@ static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, > > > > err = vma_lock_and_validate(exec, > > gpuva_to_vma(op->base.prefetch.va), > > - res_evict, false); > > + res_evict, false, false); > > if (!err && !xe_vma_has_no_bo(vma)) > > err = xe_bo_migrate(xe_vma_bo(vma), > > region_to_mem_type[region], > > @@ -3305,7 +3318,8 @@ ALLOW_ERROR_INJECTION(vm_bind_ioctl_ops_execute, ERRNO); > > DRM_XE_VM_BIND_FLAG_NULL | \ > > DRM_XE_VM_BIND_FLAG_DUMPABLE | \ > > DRM_XE_VM_BIND_FLAG_CHECK_PXP | \ > > - DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR) > > + DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR | \ > > + DRM_XE_VM_BIND_FLAG_DECOMPRESS) > > > > #ifdef TEST_VM_OPS_ERROR > > #define SUPPORTED_FLAGS (SUPPORTED_FLAGS_STUB | FORCE_OP_ERROR) > > @@ -3322,7 +3336,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > > { > > int err; > > int i; > > - > > No related. > > > if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > return -EINVAL; > > @@ -3363,9 +3376,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > > bool is_null = flags & DRM_XE_VM_BIND_FLAG_NULL; > > bool is_cpu_addr_mirror = flags & > > DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR; > > + bool is_decompress = flags & DRM_XE_VM_BIND_FLAG_DECOMPRESS; > > u16 pat_index = (*bind_ops)[i].pat_index; > > u16 coh_mode; > > - > > Not related. > > > if (XE_IOCTL_DBG(xe, is_cpu_addr_mirror && > > (!xe_vm_in_fault_mode(vm) || > > !IS_ENABLED(CONFIG_DRM_XE_GPUSVM)))) { > > @@ -3397,7 +3410,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > > XE_IOCTL_DBG(xe, obj_offset && (is_null || > > is_cpu_addr_mirror)) || > > XE_IOCTL_DBG(xe, op != DRM_XE_VM_BIND_OP_MAP && > > - (is_null || is_cpu_addr_mirror)) || > > + (is_decompress || is_null || is_cpu_addr_mirror)) || > > + XE_IOCTL_DBG(xe, is_decompress && > > + pat_index == xe->pat.idx[XE_CACHE_NONE_COMPRESSION]) || > > The above check doesn't look right. I think you may to check pat_index > against enabling compression and reject it. > > > XE_IOCTL_DBG(xe, !obj && > > op == DRM_XE_VM_BIND_OP_MAP && > > !is_null && !is_cpu_addr_mirror) || > > @@ -3417,8 +3432,8 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > > op == DRM_XE_VM_BIND_OP_PREFETCH) || > > XE_IOCTL_DBG(xe, prefetch_region && > > op != DRM_XE_VM_BIND_OP_PREFETCH) || > > - XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && > > - !(BIT(prefetch_region) & xe->info.mem_region_mask))) || > > + XE_IOCTL_DBG(xe, (prefetch_region != DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC && > > + !(BIT(prefetch_region) & xe->info.mem_region_mask))) || > > Not related but is a good cleanup. > > > XE_IOCTL_DBG(xe, obj && > > op == DRM_XE_VM_BIND_OP_UNMAP)) { > > err = -EINVAL; > > @@ -3433,6 +3448,12 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, > > err = -EINVAL; > > goto free_bind_ops; > > } > > + > > + if (is_decompress && (XE_IOCTL_DBG(xe, !xe_device_has_flat_ccs(xe)) || > > + XE_IOCTL_DBG(xe, GRAPHICS_VER(xe) < 20))) { > > + err = -EOPNOTSUPP; > > + goto free_bind_ops; > > + } > > } > > > > return 0; > > @@ -3686,7 +3707,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > u64 obj_offset = bind_ops[i].obj_offset; > > u32 prefetch_region = bind_ops[i].prefetch_mem_region_instance; > > u16 pat_index = bind_ops[i].pat_index; > > - > > Not related. > > Matt > > > ops[i] = vm_bind_ioctl_ops_create(vm, &vops, bos[i], obj_offset, > > addr, range, op, flags, > > prefetch_region, pat_index); > > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > > index 413353e1c225..7d652d17b0dc 100644 > > --- a/drivers/gpu/drm/xe/xe_vm_types.h > > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > > @@ -357,6 +357,8 @@ struct xe_vma_op_map { > > bool dumpable; > > /** @invalidate: invalidate the VMA before bind */ > > bool invalidate_on_bind; > > + /** @request_decompress: schedule decompression for GPU map */ > > + bool request_decompress; > > /** @pat_index: The pat index to use for this operation. */ > > u16 pat_index; > > }; > > -- > > 2.25.1 > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* ✓ Xe.CI.BAT: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote ` (3 preceding siblings ...) 2025-10-13 14:48 ` [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl Nitin Gote @ 2025-10-13 15:06 ` Patchwork 2025-10-13 16:28 ` ✓ Xe.CI.Full: " Patchwork 5 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2025-10-13 15:06 UTC (permalink / raw) To: Nitin Gote; +Cc: intel-xe [-- Attachment #1: Type: text/plain, Size: 898 bytes --] == Series Details == Series: drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) URL : https://patchwork.freedesktop.org/series/154714/ State : success == Summary == CI Bug Log - changes from xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23_BAT -> xe-pw-154714v2_BAT ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (11 -> 11) ------------------------------ No changes in participating hosts Changes ------- No changes found Build changes ------------- * Linux: xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23 -> xe-pw-154714v2 IGT_8582: 8582 xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23: 9440a5fa093bfa622a010df17c5a178c1a0dac23 xe-pw-154714v2: 154714v2 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/index.html [-- Attachment #2: Type: text/html, Size: 1446 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* ✓ Xe.CI.Full: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote ` (4 preceding siblings ...) 2025-10-13 15:06 ` ✓ Xe.CI.BAT: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork @ 2025-10-13 16:28 ` Patchwork 5 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2025-10-13 16:28 UTC (permalink / raw) To: Nitin Gote; +Cc: intel-xe [-- Attachment #1: Type: text/plain, Size: 70613 bytes --] == Series Details == Series: drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) URL : https://patchwork.freedesktop.org/series/154714/ State : success == Summary == CI Bug Log - changes from xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23_FULL -> xe-pw-154714v2_FULL ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (4 -> 4) ------------------------------ No changes in participating hosts Known issues ------------ Here are the changes found in xe-pw-154714v2_FULL that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1: - shard-adlp: NOTRUN -> [FAIL][1] ([Intel XE#3884]) +1 other test fail [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1.html * igt@kms_big_fb@4-tiled-64bpp-rotate-90: - shard-lnl: NOTRUN -> [SKIP][2] ([Intel XE#1407]) [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0: - shard-adlp: NOTRUN -> [SKIP][3] ([Intel XE#1124]) +9 other tests skip [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0.html * igt@kms_big_fb@linear-32bpp-rotate-270: - shard-adlp: NOTRUN -> [SKIP][4] ([Intel XE#316]) +5 other tests skip [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_big_fb@linear-32bpp-rotate-270.html * igt@kms_big_fb@y-tiled-32bpp-rotate-0: - shard-lnl: NOTRUN -> [SKIP][5] ([Intel XE#1124]) +2 other tests skip [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip: - shard-adlp: NOTRUN -> [DMESG-FAIL][6] ([Intel XE#4543]) +7 other tests dmesg-fail [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip: - shard-dg2-set2: NOTRUN -> [SKIP][7] ([Intel XE#1124]) +1 other test skip [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html * igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p: - shard-bmg: [PASS][8] -> [SKIP][9] ([Intel XE#2314] / [Intel XE#2894]) +1 other test skip [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-6/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html * igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p: - shard-adlp: NOTRUN -> [SKIP][10] ([Intel XE#2191]) +2 other tests skip [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p.html * igt@kms_bw@linear-tiling-3-displays-2160x1440p: - shard-adlp: NOTRUN -> [SKIP][11] ([Intel XE#367]) [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_bw@linear-tiling-3-displays-2160x1440p.html * igt@kms_bw@linear-tiling-4-displays-1920x1080p: - shard-lnl: NOTRUN -> [SKIP][12] ([Intel XE#1512]) [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_bw@linear-tiling-4-displays-1920x1080p.html * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-1: - shard-adlp: NOTRUN -> [SKIP][13] ([Intel XE#787]) +47 other tests skip [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-1.html * igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs: - shard-lnl: NOTRUN -> [SKIP][14] ([Intel XE#2887]) +3 other tests skip [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs.html * igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs: - shard-adlp: NOTRUN -> [SKIP][15] ([Intel XE#2907]) +1 other test skip [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs: - shard-lnl: NOTRUN -> [SKIP][16] ([Intel XE#3432]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs.html * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs: - shard-bmg: NOTRUN -> [SKIP][17] ([Intel XE#3432]) [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs.html * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs: - shard-dg2-set2: NOTRUN -> [SKIP][18] ([Intel XE#2907]) [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs: - shard-adlp: NOTRUN -> [SKIP][19] ([Intel XE#455] / [Intel XE#787]) +31 other tests skip [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-d-dp-4: - shard-dg2-set2: NOTRUN -> [INCOMPLETE][20] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345] / [Intel XE#6168]) [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-436/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-d-dp-4.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc: - shard-dg2-set2: [PASS][21] -> [INCOMPLETE][22] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345]) [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-dp-4: - shard-dg2-set2: [PASS][23] -> [INCOMPLETE][24] ([Intel XE#1727] / [Intel XE#3113]) [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-dp-4.html [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-dp-4.html * igt@kms_cdclk@mode-transition-all-outputs: - shard-adlp: NOTRUN -> [SKIP][25] ([Intel XE#4418]) [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_cdclk@mode-transition-all-outputs.html * igt@kms_chamelium_color@ctm-negative: - shard-adlp: NOTRUN -> [SKIP][26] ([Intel XE#306]) +1 other test skip [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_chamelium_color@ctm-negative.html * igt@kms_chamelium_edid@dp-edid-change-during-suspend: - shard-lnl: NOTRUN -> [SKIP][27] ([Intel XE#373]) +1 other test skip [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_chamelium_edid@dp-edid-change-during-suspend.html * igt@kms_chamelium_edid@dp-edid-resolution-list: - shard-adlp: NOTRUN -> [SKIP][28] ([Intel XE#373]) +8 other tests skip [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_chamelium_edid@dp-edid-resolution-list.html * igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode: - shard-bmg: NOTRUN -> [SKIP][29] ([Intel XE#2252]) [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode.html * igt@kms_color@ctm-0-25: - shard-bmg: [PASS][30] -> [DMESG-WARN][31] ([Intel XE#3372] / [Intel XE#3428]) [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@kms_color@ctm-0-25.html [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_color@ctm-0-25.html * igt@kms_content_protection@dp-mst-type-1: - shard-adlp: NOTRUN -> [SKIP][32] ([Intel XE#307]) +1 other test skip [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_content_protection@dp-mst-type-1.html * igt@kms_content_protection@legacy@pipe-a-dp-2: - shard-bmg: NOTRUN -> [FAIL][33] ([Intel XE#1178]) [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_content_protection@legacy@pipe-a-dp-2.html * igt@kms_cursor_crc@cursor-offscreen-128x42: - shard-lnl: NOTRUN -> [SKIP][34] ([Intel XE#1424]) [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_cursor_crc@cursor-offscreen-128x42.html * igt@kms_cursor_crc@cursor-onscreen-512x170: - shard-adlp: NOTRUN -> [SKIP][35] ([Intel XE#308]) [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_cursor_crc@cursor-onscreen-512x170.html * igt@kms_cursor_legacy@cursora-vs-flipb-legacy: - shard-bmg: [PASS][36] -> [SKIP][37] ([Intel XE#2291]) +4 other tests skip [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-1/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size: - shard-adlp: NOTRUN -> [SKIP][38] ([Intel XE#309]) +6 other tests skip [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html * igt@kms_cursor_legacy@flip-vs-cursor-toggle: - shard-bmg: [PASS][39] -> [FAIL][40] ([Intel XE#4633]) [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html * igt@kms_dp_link_training@uhbr-sst: - shard-adlp: NOTRUN -> [SKIP][41] ([Intel XE#4356]) +1 other test skip [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_dp_link_training@uhbr-sst.html * igt@kms_dsc@dsc-fractional-bpp: - shard-lnl: NOTRUN -> [SKIP][42] ([Intel XE#2244]) [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_dsc@dsc-fractional-bpp.html * igt@kms_fbcon_fbt@fbc: - shard-bmg: NOTRUN -> [SKIP][43] ([Intel XE#5425]) [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_fbcon_fbt@fbc.html * igt@kms_feature_discovery@display-2x: - shard-bmg: [PASS][44] -> [SKIP][45] ([Intel XE#2373]) [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-7/igt@kms_feature_discovery@display-2x.html [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_feature_discovery@display-2x.html * igt@kms_feature_discovery@psr1: - shard-adlp: NOTRUN -> [SKIP][46] ([Intel XE#1135]) [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_feature_discovery@psr1.html * igt@kms_flip@2x-flip-vs-blocking-wf-vblank: - shard-bmg: [PASS][47] -> [FAIL][48] ([Intel XE#3333] / [Intel XE#3650] / [Intel XE#5338]) [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-3/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html * igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ab-dp2-hdmi-a3: - shard-bmg: [PASS][49] -> [FAIL][50] ([Intel XE#5338]) +1 other test fail [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-3/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ab-dp2-hdmi-a3.html [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ab-dp2-hdmi-a3.html * igt@kms_flip@2x-flip-vs-blocking-wf-vblank@bd-dp2-hdmi-a3: - shard-bmg: [PASS][51] -> [FAIL][52] ([Intel XE#3650]) +2 other tests fail [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-3/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@bd-dp2-hdmi-a3.html [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@bd-dp2-hdmi-a3.html * igt@kms_flip@2x-flip-vs-panning-interruptible: - shard-adlp: NOTRUN -> [SKIP][53] ([Intel XE#310]) +5 other tests skip [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_flip@2x-flip-vs-panning-interruptible.html * igt@kms_flip@2x-flip-vs-suspend: - shard-lnl: NOTRUN -> [SKIP][54] ([Intel XE#1421]) +2 other tests skip [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_flip@2x-flip-vs-suspend.html * igt@kms_flip@2x-plain-flip-ts-check-interruptible: - shard-bmg: [PASS][55] -> [SKIP][56] ([Intel XE#2316]) +11 other tests skip [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-7/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html * igt@kms_flip@basic-plain-flip@b-hdmi-a1: - shard-adlp: [PASS][57] -> [DMESG-WARN][58] ([Intel XE#4543]) [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-adlp-6/igt@kms_flip@basic-plain-flip@b-hdmi-a1.html [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-2/igt@kms_flip@basic-plain-flip@b-hdmi-a1.html * igt@kms_flip@blocking-absolute-wf_vblank-interruptible@a-dp2: - shard-bmg: [PASS][59] -> [FAIL][60] ([Intel XE#5352]) +3 other tests fail [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@kms_flip@blocking-absolute-wf_vblank-interruptible@a-dp2.html [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_flip@blocking-absolute-wf_vblank-interruptible@a-dp2.html * igt@kms_flip@flip-vs-dpms-on-nop-interruptible: - shard-adlp: NOTRUN -> [DMESG-WARN][61] ([Intel XE#4543]) +3 other tests dmesg-warn [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-lnl: [PASS][62] -> [FAIL][63] ([Intel XE#301] / [Intel XE#3149]) [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1: - shard-lnl: [PASS][64] -> [FAIL][65] ([Intel XE#301]) [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html * igt@kms_flip@flip-vs-expired-vblank@b-dp4: - shard-dg2-set2: [PASS][66] -> [FAIL][67] ([Intel XE#301] / [Intel XE#3321]) [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank@b-dp4.html [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank@b-dp4.html * igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1: - shard-adlp: [PASS][68] -> [DMESG-FAIL][69] ([Intel XE#4543]) [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-adlp-6/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-2/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html * igt@kms_flip@flip-vs-suspend: - shard-bmg: [PASS][70] -> [INCOMPLETE][71] ([Intel XE#2049] / [Intel XE#2597]) +1 other test incomplete [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-7/igt@kms_flip@flip-vs-suspend.html [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-1/igt@kms_flip@flip-vs-suspend.html * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling: - shard-lnl: NOTRUN -> [SKIP][72] ([Intel XE#1397] / [Intel XE#1745]) [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode: - shard-lnl: NOTRUN -> [SKIP][73] ([Intel XE#1397]) [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling: - shard-adlp: NOTRUN -> [SKIP][74] ([Intel XE#455]) +22 other tests skip [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode: - shard-adlp: NOTRUN -> [DMESG-FAIL][75] ([Intel XE#4543] / [Intel XE#4921]) +3 other tests dmesg-fail [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode.html * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-pgflip-blt: - shard-adlp: NOTRUN -> [SKIP][76] ([Intel XE#651]) +11 other tests skip [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-onoff: - shard-lnl: NOTRUN -> [SKIP][77] ([Intel XE#651]) +2 other tests skip [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-onoff.html * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt: - shard-adlp: NOTRUN -> [SKIP][78] ([Intel XE#656]) +36 other tests skip [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@fbc-tiling-y: - shard-lnl: NOTRUN -> [SKIP][79] ([Intel XE#1469]) [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_frontbuffer_tracking@fbc-tiling-y.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-onoff: - shard-bmg: NOTRUN -> [SKIP][80] ([Intel XE#2311]) +2 other tests skip [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-onoff.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-move: - shard-lnl: NOTRUN -> [SKIP][81] ([Intel XE#656]) +9 other tests skip [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-move.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff: - shard-adlp: NOTRUN -> [SKIP][82] ([Intel XE#653]) +13 other tests skip [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt: - shard-bmg: NOTRUN -> [SKIP][83] ([Intel XE#2313]) +1 other test skip [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html * igt@kms_frontbuffer_tracking@psr-slowdraw: - shard-dg2-set2: NOTRUN -> [SKIP][84] ([Intel XE#653]) [84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-slowdraw.html * igt@kms_hdr@static-swap: - shard-bmg: [PASS][85] -> [SKIP][86] ([Intel XE#1503]) +1 other test skip [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-6/igt@kms_hdr@static-swap.html [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_hdr@static-swap.html * igt@kms_joiner@invalid-modeset-force-big-joiner: - shard-adlp: NOTRUN -> [SKIP][87] ([Intel XE#3012]) [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_joiner@invalid-modeset-force-big-joiner.html - shard-bmg: [PASS][88] -> [SKIP][89] ([Intel XE#3012]) +1 other test skip [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-1/igt@kms_joiner@invalid-modeset-force-big-joiner.html [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_joiner@invalid-modeset-force-big-joiner.html * igt@kms_joiner@invalid-modeset-force-ultra-joiner: - shard-bmg: NOTRUN -> [SKIP][90] ([Intel XE#2934]) [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html * igt@kms_plane_multiple@2x-tiling-none: - shard-adlp: NOTRUN -> [SKIP][91] ([Intel XE#4596]) [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_plane_multiple@2x-tiling-none.html - shard-bmg: [PASS][92] -> [SKIP][93] ([Intel XE#4596]) [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-1/igt@kms_plane_multiple@2x-tiling-none.html [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_plane_multiple@2x-tiling-none.html * igt@kms_plane_multiple@2x-tiling-y: - shard-bmg: NOTRUN -> [SKIP][94] ([Intel XE#5021]) [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_plane_multiple@2x-tiling-y.html * igt@kms_plane_scaling@2x-scaler-multi-pipe: - shard-lnl: NOTRUN -> [SKIP][95] ([Intel XE#309]) +1 other test skip [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_plane_scaling@2x-scaler-multi-pipe.html * igt@kms_plane_scaling@intel-max-src-size: - shard-lnl: NOTRUN -> [SKIP][96] ([Intel XE#3307]) [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_plane_scaling@intel-max-src-size.html * igt@kms_pm_backlight@fade-with-suspend: - shard-adlp: NOTRUN -> [SKIP][97] ([Intel XE#870]) [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_pm_backlight@fade-with-suspend.html * igt@kms_pm_dc@dc5-psr: - shard-adlp: NOTRUN -> [SKIP][98] ([Intel XE#1129]) [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_pm_dc@dc5-psr.html * igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-sf: - shard-bmg: NOTRUN -> [SKIP][99] ([Intel XE#1406] / [Intel XE#1489]) [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-sf.html * igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf: - shard-dg2-set2: NOTRUN -> [SKIP][100] ([Intel XE#1406] / [Intel XE#1489]) [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html * igt@kms_psr2_sf@pr-cursor-plane-update-sf: - shard-lnl: NOTRUN -> [SKIP][101] ([Intel XE#1406] / [Intel XE#2893]) +1 other test skip [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html * igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf: - shard-adlp: NOTRUN -> [SKIP][102] ([Intel XE#1406] / [Intel XE#1489]) +6 other tests skip [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html * igt@kms_psr2_su@frontbuffer-xrgb8888: - shard-adlp: NOTRUN -> [SKIP][103] ([Intel XE#1122] / [Intel XE#1406] / [Intel XE#5580]) +1 other test skip [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_psr2_su@frontbuffer-xrgb8888.html * igt@kms_psr@fbc-pr-dpms: - shard-dg2-set2: NOTRUN -> [SKIP][104] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +1 other test skip [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-464/igt@kms_psr@fbc-pr-dpms.html * igt@kms_psr@fbc-psr2-sprite-plane-move: - shard-bmg: NOTRUN -> [SKIP][105] ([Intel XE#1406] / [Intel XE#2234] / [Intel XE#2850]) [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_psr@fbc-psr2-sprite-plane-move.html * igt@kms_psr@pr-cursor-plane-move: - shard-lnl: NOTRUN -> [SKIP][106] ([Intel XE#1406]) [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@kms_psr@pr-cursor-plane-move.html * igt@kms_psr@psr2-suspend: - shard-adlp: NOTRUN -> [SKIP][107] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +11 other tests skip [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@kms_psr@psr2-suspend.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0: - shard-dg2-set2: NOTRUN -> [SKIP][108] ([Intel XE#1127]) [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html * igt@kms_rotation_crc@sprite-rotation-90-pos-100-0: - shard-adlp: NOTRUN -> [SKIP][109] ([Intel XE#3414]) +2 other tests skip [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html * igt@kms_tv_load_detect@load-detect: - shard-adlp: NOTRUN -> [SKIP][110] ([Intel XE#330]) [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_tv_load_detect@load-detect.html * igt@kms_vrr@negative-basic: - shard-bmg: [PASS][111] -> [SKIP][112] ([Intel XE#1499]) [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-6/igt@kms_vrr@negative-basic.html [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@kms_vrr@negative-basic.html * igt@sriov_basic@enable-vfs-autoprobe-off: - shard-lnl: NOTRUN -> [SKIP][113] ([Intel XE#1091] / [Intel XE#2849]) [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@sriov_basic@enable-vfs-autoprobe-off.html * igt@xe_ccs@suspend-resume: - shard-adlp: NOTRUN -> [SKIP][114] ([Intel XE#455] / [Intel XE#488] / [Intel XE#5607]) [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@xe_ccs@suspend-resume.html * igt@xe_copy_basic@mem-copy-linear-0xfd: - shard-adlp: NOTRUN -> [SKIP][115] ([Intel XE#1123]) [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_copy_basic@mem-copy-linear-0xfd.html * igt@xe_create@create-big-vram: - shard-adlp: NOTRUN -> [SKIP][116] ([Intel XE#1062]) [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_create@create-big-vram.html * igt@xe_eu_stall@blocking-re-enable: - shard-dg2-set2: NOTRUN -> [SKIP][117] ([Intel XE#5626]) [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@xe_eu_stall@blocking-re-enable.html * igt@xe_eudebug@basic-read-event: - shard-adlp: NOTRUN -> [SKIP][118] ([Intel XE#4837] / [Intel XE#5565]) +13 other tests skip [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_eudebug@basic-read-event.html * igt@xe_eudebug_online@stopped-thread: - shard-bmg: NOTRUN -> [SKIP][119] ([Intel XE#4837]) +1 other test skip [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_eudebug_online@stopped-thread.html * igt@xe_eudebug_sriov@deny-sriov: - shard-lnl: NOTRUN -> [SKIP][120] ([Intel XE#4518]) [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_eudebug_sriov@deny-sriov.html * igt@xe_evict@evict-beng-large-multi-vm: - shard-adlp: NOTRUN -> [SKIP][121] ([Intel XE#261] / [Intel XE#5564]) +1 other test skip [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_evict@evict-beng-large-multi-vm.html * igt@xe_evict@evict-beng-mixed-many-threads-small: - shard-bmg: [PASS][122] -> [INCOMPLETE][123] ([Intel XE#6321]) [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-2/igt@xe_evict@evict-beng-mixed-many-threads-small.html [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_evict@evict-beng-mixed-many-threads-small.html * igt@xe_evict@evict-beng-small-multi-vm: - shard-adlp: NOTRUN -> [SKIP][124] ([Intel XE#261] / [Intel XE#5564] / [Intel XE#688]) +1 other test skip [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_evict@evict-beng-small-multi-vm.html * igt@xe_evict@evict-mixed-many-threads-small: - shard-adlp: NOTRUN -> [SKIP][125] ([Intel XE#261]) +4 other tests skip [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_evict@evict-mixed-many-threads-small.html * igt@xe_evict@evict-mixed-threads-small-multi-vm: - shard-lnl: NOTRUN -> [SKIP][126] ([Intel XE#688]) +1 other test skip [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_evict@evict-mixed-threads-small-multi-vm.html * igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd: - shard-adlp: NOTRUN -> [SKIP][127] ([Intel XE#688]) +2 other tests skip [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html * igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-invalidate-race: - shard-bmg: [PASS][128] -> [FAIL][129] ([Intel XE#5625]) +1 other test fail [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-invalidate-race.html [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-invalidate-race.html * igt@xe_exec_basic@multigpu-once-bindexecqueue: - shard-lnl: NOTRUN -> [SKIP][130] ([Intel XE#1392]) +1 other test skip [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_exec_basic@multigpu-once-bindexecqueue.html * igt@xe_exec_basic@multigpu-once-bindexecqueue-rebind: - shard-adlp: NOTRUN -> [SKIP][131] ([Intel XE#1392] / [Intel XE#5575]) +7 other tests skip [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@xe_exec_basic@multigpu-once-bindexecqueue-rebind.html * igt@xe_exec_basic@twice-null-rebind: - shard-bmg: [PASS][132] -> [DMESG-WARN][133] ([Intel XE#3876]) [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_basic@twice-null-rebind.html [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_basic@twice-null-rebind.html * igt@xe_exec_fault_mode@many-execqueues-bindexecqueue-imm: - shard-bmg: [PASS][134] -> [FAIL][135] ([Intel XE#6050]) [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_fault_mode@many-execqueues-bindexecqueue-imm.html [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_fault_mode@many-execqueues-bindexecqueue-imm.html * igt@xe_exec_fault_mode@many-execqueues-rebind: - shard-adlp: NOTRUN -> [SKIP][136] ([Intel XE#288] / [Intel XE#5561]) +24 other tests skip [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_exec_fault_mode@many-execqueues-rebind.html * igt@xe_exec_fault_mode@twice-userptr-invalidate-race: - shard-dg2-set2: NOTRUN -> [SKIP][137] ([Intel XE#288]) [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-464/igt@xe_exec_fault_mode@twice-userptr-invalidate-race.html * igt@xe_exec_mix_modes@exec-spinner-interrupted-dma-fence: - shard-adlp: NOTRUN -> [SKIP][138] ([Intel XE#2360]) [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@xe_exec_mix_modes@exec-spinner-interrupted-dma-fence.html * igt@xe_exec_reset@cm-gt-reset: - shard-bmg: [PASS][139] -> [FAIL][140] ([Intel XE#6325]) [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_reset@cm-gt-reset.html [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_reset@cm-gt-reset.html * igt@xe_exec_sip_eudebug@breakpoint-waitsip: - shard-lnl: NOTRUN -> [SKIP][141] ([Intel XE#4837]) +2 other tests skip [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_exec_sip_eudebug@breakpoint-waitsip.html * igt@xe_exec_system_allocator@process-many-execqueues-malloc-busy-nomemset: - shard-dg2-set2: NOTRUN -> [SKIP][142] ([Intel XE#4915]) +11 other tests skip [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-434/igt@xe_exec_system_allocator@process-many-execqueues-malloc-busy-nomemset.html * igt@xe_exec_system_allocator@process-many-execqueues-mmap-nomemset: - shard-adlp: NOTRUN -> [SKIP][143] ([Intel XE#4915]) +242 other tests skip [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@xe_exec_system_allocator@process-many-execqueues-mmap-nomemset.html * igt@xe_exec_system_allocator@process-many-malloc-bo-unmap: - shard-bmg: [PASS][144] -> [FAIL][145] ([Intel XE#4937] / [Intel XE#5625]) +20 other tests fail [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_system_allocator@process-many-malloc-bo-unmap.html [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_system_allocator@process-many-malloc-bo-unmap.html * igt@xe_exec_system_allocator@threads-shared-vm-many-stride-mmap-free-huge-nomemset: - shard-lnl: NOTRUN -> [SKIP][146] ([Intel XE#4943]) +2 other tests skip [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_exec_system_allocator@threads-shared-vm-many-stride-mmap-free-huge-nomemset.html * igt@xe_exec_system_allocator@twice-mmap-new-huge-nomemset: - shard-bmg: NOTRUN -> [SKIP][147] ([Intel XE#4943]) +1 other test skip [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_system_allocator@twice-mmap-new-huge-nomemset.html * igt@xe_exec_threads@threads-bal-shared-vm-basic: - shard-bmg: [PASS][148] -> [DMESG-FAIL][149] ([Intel XE#3876]) [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_exec_threads@threads-bal-shared-vm-basic.html [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_exec_threads@threads-bal-shared-vm-basic.html * igt@xe_gt_freq@freq_range_exec: - shard-bmg: [PASS][150] -> [TIMEOUT][151] ([Intel XE#3876]) +1 other test timeout [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@xe_gt_freq@freq_range_exec.html [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@xe_gt_freq@freq_range_exec.html * igt@xe_mmap@pci-membarrier: - shard-adlp: NOTRUN -> [SKIP][152] ([Intel XE#5100]) [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_mmap@pci-membarrier.html * igt@xe_oa@create-destroy-userspace-config: - shard-adlp: NOTRUN -> [SKIP][153] ([Intel XE#3573]) +7 other tests skip [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-1/igt@xe_oa@create-destroy-userspace-config.html * igt@xe_oa@mmio-triggered-reports-read: - shard-adlp: NOTRUN -> [SKIP][154] ([Intel XE#6032]) [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@xe_oa@mmio-triggered-reports-read.html * igt@xe_pat@pat-index-xe2: - shard-adlp: NOTRUN -> [SKIP][155] ([Intel XE#977]) [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_pat@pat-index-xe2.html * igt@xe_pm@d3hot-mmap-vram: - shard-adlp: NOTRUN -> [SKIP][156] ([Intel XE#1948]) [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_pm@d3hot-mmap-vram.html * igt@xe_pm@s3-d3cold-basic-exec: - shard-adlp: NOTRUN -> [SKIP][157] ([Intel XE#2284] / [Intel XE#366]) +2 other tests skip [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_pm@s3-d3cold-basic-exec.html * igt@xe_pm@s3-mocs: - shard-lnl: NOTRUN -> [SKIP][158] ([Intel XE#584]) [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_pm@s3-mocs.html * igt@xe_pm@s4-vm-bind-unbind-all: - shard-bmg: [PASS][159] -> [DMESG-WARN][160] ([Intel XE#3428]) +5 other tests dmesg-warn [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@xe_pm@s4-vm-bind-unbind-all.html [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-6/igt@xe_pm@s4-vm-bind-unbind-all.html * igt@xe_pxp@display-black-pxp-fb: - shard-adlp: NOTRUN -> [SKIP][161] ([Intel XE#4733]) [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_pxp@display-black-pxp-fb.html * igt@xe_pxp@pxp-stale-queue-post-suspend: - shard-adlp: NOTRUN -> [SKIP][162] ([Intel XE#4733] / [Intel XE#5594]) +1 other test skip [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_pxp@pxp-stale-queue-post-suspend.html * igt@xe_query@multigpu-query-uc-fw-version-huc: - shard-adlp: NOTRUN -> [SKIP][163] ([Intel XE#944]) +4 other tests skip [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-8/igt@xe_query@multigpu-query-uc-fw-version-huc.html * igt@xe_render_copy@render-stress-2-copies: - shard-adlp: NOTRUN -> [SKIP][164] ([Intel XE#4814] / [Intel XE#5614]) +1 other test skip [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_render_copy@render-stress-2-copies.html * igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling: - shard-lnl: NOTRUN -> [SKIP][165] ([Intel XE#4130]) [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling.html * igt@xe_sriov_scheduling@equal-throughput: - shard-adlp: NOTRUN -> [DMESG-FAIL][166] ([Intel XE#3868] / [Intel XE#5213]) +1 other test dmesg-fail [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@xe_sriov_scheduling@equal-throughput.html #### Possible fixes #### * igt@kms_async_flips@alternate-sync-async-flip-atomic: - shard-bmg: [FAIL][167] ([Intel XE#3718] / [Intel XE#6078]) -> [PASS][168] [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@kms_async_flips@alternate-sync-async-flip-atomic.html [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic.html * igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-dp-2: - shard-bmg: [FAIL][169] ([Intel XE#6078]) -> [PASS][170] [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-5/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-dp-2.html [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-dp-2.html * igt@kms_big_fb@4-tiled-64bpp-rotate-180: - shard-dg2-set2: [INCOMPLETE][171] ([Intel XE#5643]) -> [PASS][172] [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-463/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-464/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-6: - shard-dg2-set2: [INCOMPLETE][173] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#6168]) -> [PASS][174] [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-6.html [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-436/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-6.html * igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic: - shard-bmg: [SKIP][175] ([Intel XE#2291]) -> [PASS][176] +6 other tests pass [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-7/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html * igt@kms_flip@2x-wf_vblank-ts-check-interruptible: - shard-bmg: [SKIP][177] ([Intel XE#2316]) -> [PASS][178] +5 other tests pass [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_flip@2x-wf_vblank-ts-check-interruptible.html [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_flip@2x-wf_vblank-ts-check-interruptible.html * igt@kms_flip@basic-flip-vs-wf_vblank: - shard-adlp: [DMESG-WARN][179] ([Intel XE#4543]) -> [PASS][180] +2 other tests pass [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-adlp-1/igt@kms_flip@basic-flip-vs-wf_vblank.html [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-6/igt@kms_flip@basic-flip-vs-wf_vblank.html * igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a6: - shard-dg2-set2: [FAIL][181] ([Intel XE#301]) -> [PASS][182] [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a6.html [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a6.html * igt@kms_flip@flip-vs-expired-vblank@c-edp1: - shard-lnl: [FAIL][183] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][184] +1 other test pass [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html * igt@kms_hdr@invalid-metadata-sizes: - shard-bmg: [SKIP][185] ([Intel XE#1503]) -> [PASS][186] [185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_hdr@invalid-metadata-sizes.html [186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-8/igt@kms_hdr@invalid-metadata-sizes.html * igt@kms_plane_multiple@2x-tiling-4: - shard-bmg: [SKIP][187] ([Intel XE#4596]) -> [PASS][188] [187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_plane_multiple@2x-tiling-4.html [188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-8/igt@kms_plane_multiple@2x-tiling-4.html #### Warnings #### * igt@kms_content_protection@atomic-dpms: - shard-bmg: [FAIL][189] ([Intel XE#1178]) -> [SKIP][190] ([Intel XE#2341]) [189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-6/igt@kms_content_protection@atomic-dpms.html [190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_content_protection@atomic-dpms.html * igt@kms_content_protection@legacy: - shard-bmg: [SKIP][191] ([Intel XE#2341]) -> [FAIL][192] ([Intel XE#1178]) [191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_content_protection@legacy.html [192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_content_protection@legacy.html * igt@kms_cursor_legacy@flip-vs-cursor-legacy: - shard-bmg: [FAIL][193] ([Intel XE#5299]) -> [FAIL][194] ([Intel XE#4633]) [193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-7/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html [194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-1/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html * igt@kms_flip@flip-vs-expired-vblank: - shard-adlp: [DMESG-WARN][195] ([Intel XE#4543]) -> [DMESG-FAIL][196] ([Intel XE#4543]) [195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-adlp-6/igt@kms_flip@flip-vs-expired-vblank.html [196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-adlp-2/igt@kms_flip@flip-vs-expired-vblank.html * igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw: - shard-bmg: [SKIP][197] ([Intel XE#2312]) -> [SKIP][198] ([Intel XE#2311]) +14 other tests skip [197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html [198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt: - shard-bmg: [SKIP][199] ([Intel XE#2311]) -> [SKIP][200] ([Intel XE#2312]) +21 other tests skip [199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html [200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen: - shard-bmg: [SKIP][201] ([Intel XE#5390]) -> [SKIP][202] ([Intel XE#2312]) +13 other tests skip [201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html [202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff: - shard-bmg: [SKIP][203] ([Intel XE#2312]) -> [SKIP][204] ([Intel XE#5390]) +3 other tests skip [203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html [204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt: - shard-bmg: [SKIP][205] ([Intel XE#2313]) -> [SKIP][206] ([Intel XE#2312]) +24 other tests skip [205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html [206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt: - shard-bmg: [SKIP][207] ([Intel XE#2312]) -> [SKIP][208] ([Intel XE#2313]) +14 other tests skip [207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html [208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-2/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html * igt@kms_plane_multiple@2x-tiling-yf: - shard-bmg: [SKIP][209] ([Intel XE#5021]) -> [SKIP][210] ([Intel XE#4596]) [209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-7/igt@kms_plane_multiple@2x-tiling-yf.html [210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-4/igt@kms_plane_multiple@2x-tiling-yf.html * igt@kms_tiled_display@basic-test-pattern-with-chamelium: - shard-bmg: [SKIP][211] ([Intel XE#2426]) -> [SKIP][212] ([Intel XE#2509]) [211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-bmg-2/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html - shard-dg2-set2: [SKIP][213] ([Intel XE#1500]) -> [SKIP][214] ([Intel XE#362]) [213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-dg2-436/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-dg2-463/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html * igt@xe_module_load@load: - shard-lnl: ([PASS][215], [PASS][216], [PASS][217], [PASS][218], [PASS][219], [PASS][220], [PASS][221], [PASS][222], [PASS][223], [SKIP][224], [PASS][225], [PASS][226], [PASS][227], [PASS][228], [PASS][229], [PASS][230], [PASS][231], [DMESG-WARN][232], [PASS][233], [PASS][234], [PASS][235], [PASS][236], [PASS][237], [PASS][238], [PASS][239], [PASS][240]) ([Intel XE#378] / [Intel XE#6295]) -> ([PASS][241], [PASS][242], [PASS][243], [PASS][244], [PASS][245], [PASS][246], [PASS][247], [PASS][248], [PASS][249], [PASS][250], [PASS][251], [PASS][252], [PASS][253], [PASS][254], [SKIP][255], [PASS][256], [PASS][257], [PASS][258], [PASS][259], [PASS][260], [PASS][261], [PASS][262], [PASS][263], [PASS][264], [PASS][265], [PASS][266]) ([Intel XE#378]) [215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-5/igt@xe_module_load@load.html [216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-8/igt@xe_module_load@load.html [217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@xe_module_load@load.html [218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-2/igt@xe_module_load@load.html [219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-7/igt@xe_module_load@load.html [220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-5/igt@xe_module_load@load.html [221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-5/igt@xe_module_load@load.html [222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-1/igt@xe_module_load@load.html [223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-7/igt@xe_module_load@load.html [224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@xe_module_load@load.html [225]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-2/igt@xe_module_load@load.html [226]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@xe_module_load@load.html [227]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-2/igt@xe_module_load@load.html [228]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@xe_module_load@load.html [229]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-4/igt@xe_module_load@load.html [230]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-4/igt@xe_module_load@load.html [231]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-3/igt@xe_module_load@load.html [232]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-1/igt@xe_module_load@load.html [233]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-8/igt@xe_module_load@load.html [234]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-8/igt@xe_module_load@load.html [235]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-4/igt@xe_module_load@load.html [236]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-1/igt@xe_module_load@load.html [237]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-1/igt@xe_module_load@load.html [238]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-7/igt@xe_module_load@load.html [239]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-7/igt@xe_module_load@load.html [240]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23/shard-lnl-5/igt@xe_module_load@load.html [241]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_module_load@load.html [242]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_module_load@load.html [243]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-1/igt@xe_module_load@load.html [244]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-1/igt@xe_module_load@load.html [245]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-5/igt@xe_module_load@load.html [246]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-2/igt@xe_module_load@load.html [247]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-2/igt@xe_module_load@load.html [248]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-2/igt@xe_module_load@load.html [249]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_module_load@load.html [250]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-8/igt@xe_module_load@load.html [251]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-7/igt@xe_module_load@load.html [252]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-7/igt@xe_module_load@load.html [253]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@xe_module_load@load.html [254]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@xe_module_load@load.html [255]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@xe_module_load@load.html [256]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-7/igt@xe_module_load@load.html [257]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-3/igt@xe_module_load@load.html [258]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-3/igt@xe_module_load@load.html [259]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-5/igt@xe_module_load@load.html [260]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-7/igt@xe_module_load@load.html [261]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@xe_module_load@load.html [262]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-3/igt@xe_module_load@load.html [263]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-1/igt@xe_module_load@load.html [264]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-4/igt@xe_module_load@load.html [265]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-5/igt@xe_module_load@load.html [266]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/shard-lnl-5/igt@xe_module_load@load.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [Intel XE#1062]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1062 [Intel XE#1091]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1091 [Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122 [Intel XE#1123]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1123 [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124 [Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127 [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129 [Intel XE#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135 [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178 [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392 [Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397 [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406 [Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407 [Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421 [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424 [Intel XE#1469]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1469 [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489 [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499 [Intel XE#1500]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1500 [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503 [Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512 [Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727 [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745 [Intel XE#1948]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1948 [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049 [Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191 [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234 [Intel XE#2244]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2244 [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252 [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284 [Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291 [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311 [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312 [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313 [Intel XE#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314 [Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316 [Intel XE#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341 [Intel XE#2360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2360 [Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373 [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426 [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509 [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597 [Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261 [Intel XE#2849]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2849 [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850 [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288 [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887 [Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893 [Intel XE#2894]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2894 [Intel XE#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907 [Intel XE#2934]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2934 [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301 [Intel XE#3012]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3012 [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306 [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307 [Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308 [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309 [Intel XE#310]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/310 [Intel XE#3113]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3113 [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149 [Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316 [Intel XE#330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/330 [Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307 [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321 [Intel XE#3333]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3333 [Intel XE#3372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3372 [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414 [Intel XE#3428]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3428 [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432 [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573 [Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362 [Intel XE#3650]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3650 [Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366 [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367 [Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718 [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373 [Intel XE#378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/378 [Intel XE#3868]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3868 [Intel XE#3876]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3876 [Intel XE#3884]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3884 [Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130 [Intel XE#4345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4345 [Intel XE#4356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4356 [Intel XE#4418]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4418 [Intel XE#4518]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4518 [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543 [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455 [Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596 [Intel XE#4633]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4633 [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733 [Intel XE#4814]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4814 [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837 [Intel XE#488]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/488 [Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915 [Intel XE#4921]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4921 [Intel XE#4937]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4937 [Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943 [Intel XE#5007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5007 [Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021 [Intel XE#5100]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5100 [Intel XE#5213]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5213 [Intel XE#5299]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5299 [Intel XE#5300]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5300 [Intel XE#5338]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5338 [Intel XE#5352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5352 [Intel XE#5390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5390 [Intel XE#5425]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5425 [Intel XE#5561]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5561 [Intel XE#5564]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5564 [Intel XE#5565]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5565 [Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575 [Intel XE#5580]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5580 [Intel XE#5594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5594 [Intel XE#5607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5607 [Intel XE#5614]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5614 [Intel XE#5625]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5625 [Intel XE#5626]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5626 [Intel XE#5643]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5643 [Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584 [Intel XE#6032]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6032 [Intel XE#6050]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6050 [Intel XE#6078]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6078 [Intel XE#6168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6168 [Intel XE#6281]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6281 [Intel XE#6295]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6295 [Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312 [Intel XE#6320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6320 [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321 [Intel XE#6325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6325 [Intel XE#6326]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6326 [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651 [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653 [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656 [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688 [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787 [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870 [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929 [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944 [Intel XE#977]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/977 Build changes ------------- * Linux: xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23 -> xe-pw-154714v2 IGT_8582: 8582 xe-3906-9440a5fa093bfa622a010df17c5a178c1a0dac23: 9440a5fa093bfa622a010df17c5a178c1a0dac23 xe-pw-154714v2: 154714v2 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154714v2/index.html [-- Attachment #2: Type: text/html, Size: 81022 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-10-13 16:28 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-10-13 14:48 [PATCH v2 0/3] drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression Nitin Gote 2025-10-13 14:28 ` ✓ CI.KUnit: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork 2025-10-13 14:48 ` [PATCH v2 1/3] drm/xe: add VM_BIND DECOMPRESS uapi flag Nitin Gote 2025-10-13 14:48 ` [PATCH v2 2/3] drm/xe: add xe_migrate_resolve wrapper and is_vram_resolve support Nitin Gote 2025-10-13 14:48 ` [PATCH v2 3/3] drm/xe: implement VM_BIND decompression in vm_bind_ioctl Nitin Gote 2025-10-13 16:10 ` Matthew Brost 2025-10-13 16:12 ` Matthew Brost 2025-10-13 15:06 ` ✓ Xe.CI.BAT: success for drm/xe: add VM_BIND DECOMPRESS support and on‑demand decompression (rev2) Patchwork 2025-10-13 16:28 ` ✓ Xe.CI.Full: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox