Skip to contentSkip to conversation

tests/kms_content_protection: CP cleanup exit handler

PATCH Superseded Anshuman Gupta 3 participants 6 messages May 19, 2020

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 tests/kms_content_protection: CP cleanup exit handler

Add HDCP content protection cleanup igt exit handler, earlier it was done through igt_fixture which doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.

---
 tests/kms_content_protection.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
tests/kms_content_protection.c +9 -5
index 3b9cedcb..f3101b8a 100644
@@ -651,12 +651,21 @@ static void test_content_protection_cleanup(void)
 	}
 }
 
+static void test_content_protection_exit_handler(int sig)
+{
+	igt_fixture {
+		test_content_protection_cleanup();
+		igt_display_fini(&data.display);
+	}
+}
+
 igt_main
 {
 	igt_fixture {
 		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
 
 		igt_display_require(&data.display, data.drm_fd);
+		igt_install_exit_handler(test_content_protection_exit_handler);
 	}
 
 	igt_subtest("legacy") {
@@ -723,9 +732,4 @@ igt_main
 		igt_assert_f(ret, "SRM update failed");
 		test_content_protection(COMMIT_ATOMIC, HDCP_CONTENT_TYPE_0);
 	}
-
-	igt_fixture {
-		test_content_protection_cleanup();
-		igt_display_fini(&data.display);
-	}
 }
Signature · 6 lines
2.26.0

_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
#1 lore raw

[igt-dev] ✓ Fi.CI.BAT: success for tests/kms_content_protection: CP cleanup exit handler

== Series Details ==

== Series Details ==

Series: tests/kms_content_protection: CP cleanup exit handler
URL : https://patchwork.freedesktop.org/series/77388/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_8498 -> IGTPW_4580
====================================================

Summary
-------

**SUCCESS**

No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

* igt@i915_selftest@live@execlists:
- fi-skl-guc: [PASS][1] -> [INCOMPLETE][2] ([i915#1795] / [i915#656])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/fi-skl-guc/igt@i915_selftest@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/fi-skl-guc/igt@i915_selftest@[email protected]

[i915#1795]: https://gitlab.freedesktop.org/drm/intel/issues/1795
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656

Participating hosts (52 -> 42)
------------------------------

Missing (10): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-hsw-4770 fi-kbl-7560u fi-byt-clapper fi-bdw-samus

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

* CI: CI-20190529 -> None
* IGT: IGT_5659 -> IGTPW_4580

CI-20190529: 20190529
CI_DRM_8498: 1493c649ae92207a758afa50a639275bd6c80e2e @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4580: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/index.html
IGT_5659: 66ab5e42811fee3dea8c21ab29e70e323a0650de @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/index.html
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#2 lore raw

[igt-dev] ✗ Fi.CI.IGT: failure for tests/kms_content_protection: CP cleanup exit handler

In reply to Anshuman Gupta
== Series Details ==

== Series Details ==

Series: tests/kms_content_protection: CP cleanup exit handler
URL : https://patchwork.freedesktop.org/series/77388/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_8498_full -> IGTPW_4580_full
====================================================

Summary
-------

**FAILURE**

Serious unknown changes coming with IGTPW_4580_full absolutely need to be verified manually.

If you think the reported changes have nothing to do with the changes introduced in IGTPW_4580_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI.

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

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

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

### IGT changes ###

#### Possible regressions ####

* igt@i915_pm_dc@dc5-psr:
- shard-tglb: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb8/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-tglb5/igt@[email protected]

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

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

### IGT changes ###

#### Issues hit ####

* igt@gem_exec_suspend@basic-s0:
- shard-tglb: [PASS][3] -> [INCOMPLETE][4] ([i915#1602] / [i915#456])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb1/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-tglb8/igt@[email protected]

* igt@i915_pm_dc@dc5-psr:
- shard-iclb: [PASS][5] -> [FAIL][6] ([i915#1899])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb4/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-iclb1/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-128x42-random:
- shard-apl: [PASS][7] -> [FAIL][8] ([i915#54])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl3/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-256x256-random:
- shard-kbl: [PASS][9] -> [FAIL][10] ([i915#54] / [i915#93] / [i915#95]) +1 similar issue
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl6/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl2/igt@[email protected]

* igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled:
- shard-kbl: [PASS][11] -> [FAIL][12] ([i915#177] / [i915#52] / [i915#54] / [i915#93] / [i915#95])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl3/igt@[email protected]
- shard-apl: [PASS][13] -> [FAIL][14] ([i915#52] / [i915#54] / [i915#95])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@[email protected]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl7/igt@[email protected]

* igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-untiled:
- shard-kbl: [PASS][15] -> [FAIL][16] ([fdo#108145] / [i915#177] / [i915#52] / [i915#54] / [i915#93] / [i915#95])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl2/igt@[email protected]
- shard-apl: [PASS][17] -> [FAIL][18] ([fdo#108145] / [i915#52] / [i915#54] / [i915#95])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl7/igt@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl7/igt@[email protected]

* igt@kms_panel_fitting@atomic-fastset:
- shard-iclb: [PASS][19] -> [FAIL][20] ([i915#1757])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb4/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-iclb8/igt@[email protected]

* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes:
- shard-apl: [PASS][21] -> [DMESG-WARN][22] ([i915#180]) +1 similar issue
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl7/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl4/igt@[email protected]

* igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
- shard-apl: [PASS][23] -> [FAIL][24] ([i915#1779] / [i915#95])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl7/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl6/igt@[email protected]

* igt@kms_properties@plane-properties-legacy:
- shard-snb: [PASS][25] -> [SKIP][26] ([fdo#109271]) +2 similar issues
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-snb1/igt@[email protected]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-snb2/igt@[email protected]

* igt@kms_psr@psr2_primary_blt:
- shard-iclb: [PASS][27] -> [SKIP][28] ([fdo#109441]) +1 similar issue
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb2/igt@kms_psr@psr2_primary_blt.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-iclb4/igt@kms_psr@psr2_primary_blt.html

#### Possible fixes ####

* igt@gen9_exec_parse@allowed-all:
- shard-apl: [DMESG-WARN][29] ([i915#1436] / [i915#716]) -> [PASS][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@[email protected]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl1/igt@[email protected]

* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-tglb: [SKIP][31] ([i915#1904]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb8/igt@[email protected]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-tglb1/igt@[email protected]

* igt@kms_color@pipe-c-degamma:
- shard-apl: [FAIL][33] ([i915#71]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl2/igt@[email protected]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl6/igt@[email protected]
- shard-glk: [FAIL][35] ([i915#71]) -> [PASS][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk1/igt@[email protected]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-glk7/igt@[email protected]
- shard-kbl: [FAIL][37] ([i915#71]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@[email protected]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl7/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-64x64-onscreen:
- shard-kbl: [FAIL][39] ([i915#54] / [i915#93] / [i915#95]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl4/igt@[email protected]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl2/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-kbl: [DMESG-WARN][41] ([i915#180]) -> [PASS][42] +4 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl2/igt@[email protected]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl7/igt@[email protected]

* igt@kms_fbcon_fbt@psr-suspend:
- shard-tglb: [FAIL][43] ([i915#1121]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb2/igt@[email protected]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-tglb2/igt@[email protected]

* {igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1}:
- shard-glk: [FAIL][45] ([i915#79]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk9/igt@kms_flip@[email protected]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-glk1/igt@kms_flip@[email protected]

* {igt@kms_flip@flip-vs-suspend-interruptible@a-dp1}:
- shard-apl: [DMESG-WARN][47] ([i915#180]) -> [PASS][48] +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl8/igt@kms_flip@[email protected]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl8/igt@kms_flip@[email protected]

* igt@kms_plane_cursor@pipe-a-overlay-size-64:
- shard-apl: [FAIL][49] ([i915#1559] / [i915#95]) -> [PASS][50] +1 similar issue
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@[email protected]
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl2/igt@[email protected]
- shard-kbl: [FAIL][51] ([i915#1559] / [i915#93] / [i915#95]) -> [PASS][52] +1 similar issue
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@[email protected]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl4/igt@[email protected]

* igt@kms_psr@no_drrs:
- shard-iclb: [FAIL][53] ([i915#173]) -> [PASS][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb1/igt@kms_psr@no_drrs.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-iclb2/igt@kms_psr@no_drrs.html

* igt@kms_psr@psr2_cursor_plane_onoff:
- shard-iclb: [SKIP][55] ([fdo#109441]) -> [PASS][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb1/igt@kms_psr@psr2_cursor_plane_onoff.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html

* {igt@perf@polling-parameterized}:
- shard-tglb: [FAIL][57] ([i915#1542]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb1/igt@[email protected]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-tglb3/igt@[email protected]

#### Warnings ####

* igt@kms_content_protection@atomic:
- shard-apl: [DMESG-FAIL][59] ([fdo#110321]) -> [FAIL][60] ([fdo#110321] / [fdo#110336] / [i915#95])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl7/igt@[email protected]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl7/igt@[email protected]

* igt@kms_content_protection@legacy:
- shard-apl: [FAIL][61] ([fdo#110321] / [fdo#110336]) -> [TIMEOUT][62] ([i915#1319])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl6/igt@[email protected]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl7/igt@[email protected]

* igt@kms_content_protection@lic:
- shard-apl: [TIMEOUT][63] ([i915#1319]) -> [FAIL][64] ([fdo#110321]) +1 similar issue
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl4/igt@[email protected]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl2/igt@[email protected]
- shard-kbl: [FAIL][65] ([fdo#110321]) -> [TIMEOUT][66] ([i915#1319])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@[email protected]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl4/igt@[email protected]

* igt@kms_fbcon_fbt@fbc-suspend:
- shard-apl: [FAIL][67] ([i915#1121] / [i915#95]) -> [FAIL][68] ([i915#1525])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@[email protected]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl4/igt@[email protected]
- shard-kbl: [FAIL][69] ([i915#1121] / [i915#93] / [i915#95]) -> [FAIL][70] ([i915#64])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@[email protected]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl3/igt@[email protected]

* igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
- shard-apl: [FAIL][71] ([fdo#108145] / [i915#265]) -> [FAIL][72] ([fdo#108145] / [i915#265] / [i915#95])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@[email protected]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-apl1/igt@[email protected]
- shard-kbl: [FAIL][73] ([fdo#108145] / [i915#265]) -> [FAIL][74] ([fdo#108145] / [i915#265] / [i915#93] / [i915#95]) +1 similar issue
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@[email protected]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/shard-kbl6/igt@[email protected]

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

[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110321]: https://bugs.freedesktop.org/show_bug.cgi?id=110321
[fdo#110336]: https://bugs.freedesktop.org/show_bug.cgi?id=110336
[i915#1121]: https://gitlab.freedesktop.org/drm/intel/issues/1121
[i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
[i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
[i915#1525]: https://gitlab.freedesktop.org/drm/intel/issues/1525
[i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
[i915#1559]: https://gitlab.freedesktop.org/drm/intel/issues/1559
[i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
[i915#173]: https://gitlab.freedesktop.org/drm/intel/issues/173
[i915#1757]: https://gitlab.freedesktop.org/drm/intel/issues/1757
[i915#177]: https://gitlab.freedesktop.org/drm/intel/issues/177
[i915#1779]: https://gitlab.freedesktop.org/drm/intel/issues/1779
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1899]: https://gitlab.freedesktop.org/drm/intel/issues/1899
[i915#1904]: https://gitlab.freedesktop.org/drm/intel/issues/1904
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456
[i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#64]: https://gitlab.freedesktop.org/drm/intel/issues/64
[i915#71]: https://gitlab.freedesktop.org/drm/intel/issues/71
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95

Participating hosts (11 -> 8)
------------------------------

Missing (3): pig-skl-6260u pig-glk-j5005 pig-icl-1065g7

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

* CI: CI-20190529 -> None
* IGT: IGT_5659 -> IGTPW_4580
* Piglit: piglit_4509 -> None

CI-20190529: 20190529
CI_DRM_8498: 1493c649ae92207a758afa50a639275bd6c80e2e @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4580: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/index.html
IGT_5659: 66ab5e42811fee3dea8c21ab29e70e323a0650de @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4580/index.html
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#3 lore raw
In reply to Anshuman Gupta
Quoted 16 lines · Anshuman Gupta

Add HDCP content protection cleanup igt exit handler, earlier it was done through igt_fixture which doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.

---
 tests/kms_content_protection.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
tests/kms_content_protection.c +0 -0
index 3b9cedcb..f3101b8a 100644

tests/kms_content_protection.c static void test_content_protection_cleanup(void) · line 659

Quoted 9 lines
tests/kms_content_protection.c +6 -0
@@ -651,12 +651,21 @@ static void test_content_protection_cleanup(void)
 	}
 }
 
+static void test_content_protection_exit_handler(int sig)
+{
+	igt_fixture {
+		test_content_protection_cleanup();
+		igt_display_fini(&data.display);
+	}

Don't put it in an igt_fixture. If a test fails, you're still inside a subtest and entering an igt_fixture will fail.

You can trust the state to be correct without the fixture because you only install the exit handler when we're actually executing and the init has been already done.

Signature · 5 lines
Petri Latvala
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
#4 lore raw
Quoted 20 lines · Petri Latvala
Quoted 19 lines · Anshuman Gupta

Add HDCP content protection cleanup igt exit handler, earlier it was done through igt_fixture which doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.

---
 tests/kms_content_protection.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
tests/kms_content_protection.c +0 -0
index 3b9cedcb..f3101b8a 100644
@@ -651,12 +651,21 @@ static void test_content_protection_cleanup(void)
 	}
 }
 
Quoted 7 lines

tests/kms_content_protection.c static void test_content_protection_cleanup(void) · line 659

Quoted 6 lines
tests/kms_content_protection.c +6 -0
+static void test_content_protection_exit_handler(int sig)
+{
+	igt_fixture {
+		test_content_protection_cleanup();
+		igt_display_fini(&data.display);
+	}

Thanks Petri for review.

Quoted 2 lines

Don't put it in an igt_fixture. If a test fails, you're still inside a subtest and entering an igt_fixture will fail.

test_content_protection_cleanup is using for_each_connected_output() which of using assert on igt_can_fail(), because of that i had to used igt_fixture(), could you please suggest to mitigate above.

Thanks,
Anshuman Gupta.

Quoted 8 lines

You can trust the state to be correct without the fixture because you only install the exit handler when we're actually executing and the init has been already done.

Signature · 1 line
Petri Latvala

_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#5 lore raw
Quoted 28 lines · Anshuman Gupta
Quoted 20 lines · Petri Latvala
Quoted 19 lines · Anshuman Gupta

Add HDCP content protection cleanup igt exit handler, earlier it was done through igt_fixture which doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.

---
 tests/kms_content_protection.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
tests/kms_content_protection.c +0 -0
index 3b9cedcb..f3101b8a 100644
@@ -651,12 +651,21 @@ static void test_content_protection_cleanup(void)
 	}
 }
 
Quoted 7 lines

tests/kms_content_protection.c static void test_content_protection_cleanup(void) · line 659

Quoted 6 lines
tests/kms_content_protection.c +6 -0
+static void test_content_protection_exit_handler(int sig)
+{
+	igt_fixture {
+		test_content_protection_cleanup();
+		igt_display_fini(&data.display);
+	}
Quoted 6 lines

Thanks Petri for review.

Quoted 2 lines

Don't put it in an igt_fixture. If a test fails, you're still inside a subtest and entering an igt_fixture will fail.

test_content_protection_cleanup is using for_each_connected_output() which of using assert on igt_can_fail(), because of that i had to used igt_fixture(), could you please suggest to mitigate above.

Ohhh bugger, you're right =(

Well, the lib is in need of a good cleanup regarding exit handlers, as this has now revealed. We need to fix the context tracking to properly support exit handlers and have igt_can_fail work in those.

I suppose this code should work for now, the comment included:

/*
* FIXME: igt_can_fail() is sometimes incorrect in exit handlers. Wrap
* cleanup in igt_fixture if igt_core thinks we're still in a subtest. */
if (igt_subtest_name()) {
test_content_protection_cleanup(); igt_display_fini(&data.display);
} else {

  igt_fixture {
    test_content_protection_cleanup();
    igt_display_fini(&data.display);

}
}

Signature · 5 lines
Petri Latvala
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev