tests/kms_content_protection: CP cleanup exit handler
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
@@ -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_mainigt_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
Patchwork
CI[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
Patchwork
CI[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
Quoted 16 lines · Anshuman Gupta
Add HDCP content protection cleanup igt exit handler, earlier it was done through
igt_fixturewhich doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.Cc Ramalingam C <[email protected]>Signed-off-by Anshuman Gupta <[email protected]>--- tests/kms_content_protection.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)tests/kms_content_protection.c +0
-0
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
Quoted 20 lines · Petri Latvala
Quoted 19 lines · Anshuman Gupta
Add HDCP content protection cleanup igt exit handler, earlier it was done through
igt_fixturewhich doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.Cc Ramalingam C <[email protected]>Signed-off-by Anshuman Gupta <[email protected]>--- tests/kms_content_protection.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)tests/kms_content_protection.c +0
-0@@ -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 anigt_fixturewill 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
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_fixturewhich doesn't trigger hdcp cleanup on igt abortion due to any signal. This should avoid any HDCP content protection leak.Cc Ramalingam C <[email protected]>Signed-off-by Anshuman Gupta <[email protected]>--- tests/kms_content_protection.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)tests/kms_content_protection.c +0
-0@@ -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 anigt_fixturewill fail.
test_content_protection_cleanupis usingfor_each_connected_output()which of using assert onigt_can_fail(), because of that i had to usedigt_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