* [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption
@ 2023-11-10 4:06 Vignesh Raman
2023-11-10 4:50 ` [igt-dev] ✗ CI.xeBAT: failure for lib/igt_kms: Fix memory corruption (rev4) Patchwork
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Vignesh Raman @ 2023-11-10 4:06 UTC (permalink / raw)
To: bhanuprakash.modem, daniels, igt-dev; +Cc: helen.koike
virtio-gpu kernel driver, which provides KMS, reports 16 for count_crtcs
which exceeds IGT_MAX_PIPES set to 8. The function igt_display_require
allocates memory for IGT_MAX_PIPES members of igt_pipe_t structures,
but then writes into it based on the count_crtcs reported by the kernel,
resulting in memory corruption.
# malloc(): corrupted top size
# Received signal SIGABRT.
# Stack trace:
# #0 [fatal_sig_handler+0x17b]
# #1 [__sigaction+0x40]
# #2 [pthread_key_delete+0x14c]
# #3 [gsignal+0x12]
# #4 [abort+0xd3]
# #5 [__fsetlocking+0x290]
# #6 [timer_settime+0x37a]
# #7 [__default_morecore+0x1f1b]
# #8 [__libc_calloc+0x161]
# #9 [drmModeGetPlaneResources+0x44]
# #10 [igt_display_require+0x194]
# #11 [__igt_unique____real_main1356+0x93c]
# #12 [main+0x3f]
# #13 [__libc_init_first+0x8a]
# #14 [__libc_start_main+0x85]
# #15 [_start+0x21]
Increase IGT_MAX_PIPES to 16 to fix this memory corruption issue.
igt_display_require initializes display and allocate resources as
a prerequisite for the tests. Fail the test if count_crtcs exceeds
IGT_MAX_PIPES with debug information. Additionally, update the test
documentation to cover up to 16 pipes, and blacklist tests from
pipe-i to pipe-p on both the XE blocklist and the intel-ci blacklist.
This fix is required for drm-ci to run igt tests on virtio-gpu.
Reviewed-by: Daniel Stone <daniels@collabora.com>
Acked-by: Helen Koike <helen.koike@collabora.com>
Suggested-by: Daniel Stone <daniels@collabora.com>
Suggested-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
---
lib/igt_kms.c | 6 +++++-
lib/igt_kms.h | 20 +++++++++++++++++++-
tests/intel-ci/blacklist.txt | 10 +++++++++-
tests/intel-ci/xe.blocklist.txt | 6 +++---
tests/intel/kms_ccs.c | 24 ++++++++++++++++++++++++
tests/kms_bw.c | 2 +-
6 files changed, 61 insertions(+), 7 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 453103f90..6ad7cc127 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -906,7 +906,7 @@ static igt_plane_t *igt_get_assigned_primary(igt_output_t *output, igt_pipe_t *p
*/
const char *kmstest_pipe_name(enum pipe pipe)
{
- static const char str[] = "A\0B\0C\0D\0E\0F\0G\0H";
+ static const char str[] = "A\0B\0C\0D\0E\0F\0G\0H\0I\0J\0K\0L\0M\0N\0O\0P";
_Static_assert(sizeof(str) == IGT_MAX_PIPES * 2,
"Missing pipe name");
@@ -2770,6 +2770,10 @@ void igt_display_require(igt_display_t *display, int drm_fd)
}
#endif
+ igt_assert_f(resources->count_crtcs <= IGT_MAX_PIPES,
+ "count_crtcs exceeds IGT_MAX_PIPES, resources->count_crtcs=%d, IGT_MAX_PIPES=%d\n",
+ resources->count_crtcs, IGT_MAX_PIPES);
+
display->n_pipes = IGT_MAX_PIPES;
display->pipes = calloc(sizeof(igt_pipe_t), display->n_pipes);
igt_assert_f(display->pipes, "Failed to allocate memory for %d pipes\n", display->n_pipes);
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 9028ab9be..5c705b585 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -57,6 +57,16 @@
* @PIPE_D: Fourth crtc.
* @PIPE_E: Fifth crtc.
* @PIPE_F: Sixth crtc.
+ * @PIPE_G: Seventh crtc.
+ * @PIPE_H: Eighth crtc.
+ * @PIPE_I: Ninth crtc.
+ * @PIPE_J: Tenth crtc.
+ * @PIPE_K: Eleventh crtc.
+ * @PIPE_L: Twelfth crtc.
+ * @PIPE_M: Thirteenth crtc.
+ * @PIPE_N: Fourteenth crtc.
+ * @PIPE_O: Fifteenth crtc.
+ * @PIPE_P: Sixteenth crtc.
* @IGT_MAX_PIPES: Max number of pipes allowed.
*/
enum pipe {
@@ -70,7 +80,15 @@ enum pipe {
PIPE_F,
PIPE_G,
PIPE_H,
- IGT_MAX_PIPES
+ PIPE_I,
+ PIPE_J,
+ PIPE_K,
+ PIPE_L,
+ PIPE_M,
+ PIPE_N,
+ PIPE_O,
+ PIPE_P,
+ IGT_MAX_PIPES
};
const char *kmstest_pipe_name(enum pipe pipe);
int kmstest_pipe_to_index(char pipe);
diff --git a/tests/intel-ci/blacklist.txt b/tests/intel-ci/blacklist.txt
index e13759d3e..e439e2af4 100644
--- a/tests/intel-ci/blacklist.txt
+++ b/tests/intel-ci/blacklist.txt
@@ -117,12 +117,20 @@ igt@gem_ctx_isolation@.*-s4
###############################################
igt@i915_suspend@shrink
###############################################
-# pipe-e, pipe-f, pipe-g, pipe-h no current HW support
+# pipe-e, pipe-f, pipe-g, pipe-h, pipe-i, pipe-j, pipe-k, pipe-l, pipe-m, pipe-n, pipe-o, pipe-p no current HW support
###############################################
igt@.*@.*pipe-e($|-.*)
igt@.*@.*pipe-f($|-.*)
igt@.*@.*pipe-g($|-.*)
igt@.*@.*pipe-h($|-.*)
+igt@.*@.*pipe-i($|-.*)
+igt@.*@.*pipe-j($|-.*)
+igt@.*@.*pipe-k($|-.*)
+igt@.*@.*pipe-l($|-.*)
+igt@.*@.*pipe-m($|-.*)
+igt@.*@.*pipe-n($|-.*)
+igt@.*@.*pipe-o($|-.*)
+igt@.*@.*pipe-p($|-.*)
###############################################
# Temporary workarounds for CI-impacting bugs
diff --git a/tests/intel-ci/xe.blocklist.txt b/tests/intel-ci/xe.blocklist.txt
index 135ab18a3..bec6ee23b 100644
--- a/tests/intel-ci/xe.blocklist.txt
+++ b/tests/intel-ci/xe.blocklist.txt
@@ -44,11 +44,11 @@ igt@syncobj_.*
igt@template
igt@tools_test
##################################################################
-# KMS: Pipe E, F, G and H are not available on Intel hardware,
+# KMS: Pipe E, F, G, H, I, J, K, L, M, N, O and P are not available on Intel hardware,
# hence can't use more than 4 displays.
##################################################################
-igt@.*@.*pipe-(e|f|g|h).*
-igt@kms_bw@.*-(5|6|7|8)-displays-.*
+igt@.*@.*pipe-(e|f|g|h|i|j|k|l|m|n|o|p).*
+igt@kms_bw@.*-(5|6|7|8|9|10|11|12|13|14|15|16)-displays-.*
##################################################################
# KMS: Tests specific to i915 driver
##################################################################
diff --git a/tests/intel/kms_ccs.c b/tests/intel/kms_ccs.c
index 93e837b84..6dc30ac24 100644
--- a/tests/intel/kms_ccs.c
+++ b/tests/intel/kms_ccs.c
@@ -53,6 +53,14 @@
* @pipe-F: Pipe F
* @pipe-G: Pipe G
* @pipe-H: Pipe H
+ * @pipe-I: Pipe I
+ * @pipe-J: Pipe J
+ * @pipe-K: Pipe K
+ * @pipe-L: Pipe L
+ * @pipe-M: Pipe M
+ * @pipe-N: Pipe N
+ * @pipe-O: Pipe O
+ * @pipe-P: Pipe P
*
* arg[2]:
*
@@ -90,6 +98,14 @@
* @pipe-F: Pipe F
* @pipe-G: Pipe G
* @pipe-H: Pipe H
+ * @pipe-I: Pipe I
+ * @pipe-J: Pipe J
+ * @pipe-K: Pipe K
+ * @pipe-L: Pipe L
+ * @pipe-M: Pipe M
+ * @pipe-N: Pipe N
+ * @pipe-O: Pipe O
+ * @pipe-P: Pipe P
*
* arg[2]:
*
@@ -131,6 +147,14 @@
* @pipe-F: Pipe F
* @pipe-G: Pipe G
* @pipe-H: Pipe H
+ * @pipe-I: Pipe I
+ * @pipe-J: Pipe J
+ * @pipe-K: Pipe K
+ * @pipe-L: Pipe L
+ * @pipe-M: Pipe M
+ * @pipe-N: Pipe N
+ * @pipe-O: Pipe O
+ * @pipe-P: Pipe P
*
* arg[2]:
*
diff --git a/tests/kms_bw.c b/tests/kms_bw.c
index 5f9a020da..896114a3a 100644
--- a/tests/kms_bw.c
+++ b/tests/kms_bw.c
@@ -37,7 +37,7 @@
* Mega feature: General Display Features
* Test category: functionality test
*
- * arg[1].values: 1, 2, 3, 4, 5, 6, 7, 8
+ * arg[1].values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
*
* arg[2]:
*
--
2.40.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [igt-dev] ✗ CI.xeBAT: failure for lib/igt_kms: Fix memory corruption (rev4) 2023-11-10 4:06 [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Vignesh Raman @ 2023-11-10 4:50 ` Patchwork 2023-11-10 5:04 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork 2023-11-10 6:06 ` [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Modem, Bhanuprakash 2 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2023-11-10 4:50 UTC (permalink / raw) To: Vignesh Raman; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 11439 bytes --] == Series Details == Series: lib/igt_kms: Fix memory corruption (rev4) URL : https://patchwork.freedesktop.org/series/125599/ State : failure == Summary == CI Bug Log - changes from XEIGT_7581_BAT -> XEIGTPW_10156_BAT ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with XEIGTPW_10156_BAT absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in XEIGTPW_10156_BAT, please notify your bug team (lgci.bug.filing@intel.com) to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (0 -> 3) ------------------------------ Additional (3): bat-dg2-oem2 bat-adlp-7 bat-atsm-2 Possible new issues ------------------- Here are the unknown changes that may have been introduced in XEIGTPW_10156_BAT: ### IGT changes ### #### Possible regressions #### * igt@kms_cursor_legacy@basic-flip-after-cursor-legacy: - bat-adlp-7: NOTRUN -> [FAIL][1] [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html Known issues ------------ Here are the changes found in XEIGTPW_10156_BAT that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: - bat-dg2-oem2: NOTRUN -> [SKIP][2] ([Intel XE#623]) [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html * igt@kms_addfb_basic@basic-y-tiled-legacy: - bat-dg2-oem2: NOTRUN -> [SKIP][3] ([Intel XE#624]) [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_addfb_basic@basic-y-tiled-legacy.html * igt@kms_addfb_basic@invalid-set-prop-any: - bat-atsm-2: NOTRUN -> [SKIP][4] ([i915#6077]) +33 other tests skip [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_addfb_basic@invalid-set-prop-any.html * igt@kms_addfb_basic@tile-pitch-mismatch: - bat-dg2-oem2: NOTRUN -> [FAIL][5] ([Intel XE#609]) +1 other test fail [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_addfb_basic@tile-pitch-mismatch.html - bat-adlp-7: NOTRUN -> [FAIL][6] ([Intel XE#609]) +2 other tests fail [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@kms_addfb_basic@tile-pitch-mismatch.html * igt@kms_cursor_legacy@basic-flip-after-cursor-legacy: - bat-atsm-2: NOTRUN -> [SKIP][7] ([Intel XE#782]) +5 other tests skip [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html * igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size: - bat-dg2-oem2: NOTRUN -> [FAIL][8] ([Intel XE#692] / [Intel XE#773]) [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size.html * igt@kms_dsc@dsc-basic: - bat-atsm-2: NOTRUN -> [SKIP][9] ([Intel XE#784]) [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_dsc@dsc-basic.html - bat-dg2-oem2: NOTRUN -> [SKIP][10] ([Intel XE#423]) [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_dsc@dsc-basic.html - bat-adlp-7: NOTRUN -> [SKIP][11] ([Intel XE#423]) [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@kms_dsc@dsc-basic.html * igt@kms_flip@basic-flip-vs-wf_vblank: - bat-atsm-2: NOTRUN -> [SKIP][12] ([Intel XE#541]) +3 other tests skip [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_flip@basic-flip-vs-wf_vblank.html * igt@kms_flip@basic-flip-vs-wf_vblank@a-dp3: - bat-dg2-oem2: NOTRUN -> [FAIL][13] ([Intel XE#480]) +1 other test fail [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp3.html * igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1: - bat-adlp-7: NOTRUN -> [FAIL][14] ([Intel XE#480]) +1 other test fail [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html * igt@kms_force_connector_basic@prune-stale-modes: - bat-dg2-oem2: NOTRUN -> [SKIP][15] ([i915#5274]) [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_force_connector_basic@prune-stale-modes.html * igt@kms_frontbuffer_tracking@basic: - bat-dg2-oem2: NOTRUN -> [FAIL][16] ([Intel XE#608]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_frontbuffer_tracking@basic.html - bat-adlp-7: NOTRUN -> [DMESG-FAIL][17] ([Intel XE#282] / [i915#2017]) [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html - bat-atsm-2: NOTRUN -> [SKIP][18] ([Intel XE#783]) [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_frontbuffer_tracking@basic.html * igt@kms_hdmi_inject@inject-audio: - bat-atsm-2: NOTRUN -> [SKIP][19] ([Intel XE#540]) +3 other tests skip [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_hdmi_inject@inject-audio.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-b-dp-3: - bat-dg2-oem2: NOTRUN -> [FAIL][20] ([Intel XE#400] / [Intel XE#616]) +2 other tests fail [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-b-dp-3.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-xr24: - bat-atsm-2: NOTRUN -> [SKIP][21] ([i915#1836]) +6 other tests skip [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-xr24.html * igt@kms_prop_blob@basic: - bat-atsm-2: NOTRUN -> [SKIP][22] ([Intel XE#780]) [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_prop_blob@basic.html * igt@kms_psr@primary_page_flip: - bat-dg2-oem2: NOTRUN -> [SKIP][23] ([Intel XE#535]) +2 other tests skip [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@kms_psr@primary_page_flip.html * igt@kms_psr@sprite_plane_onoff: - bat-atsm-2: NOTRUN -> [SKIP][24] ([Intel XE#535]) +2 other tests skip [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@kms_psr@sprite_plane_onoff.html * igt@xe_compute@compute-square: - bat-atsm-2: NOTRUN -> [SKIP][25] ([Intel XE#672]) [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@xe_compute@compute-square.html - bat-dg2-oem2: NOTRUN -> [SKIP][26] ([Intel XE#672]) [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@xe_compute@compute-square.html * igt@xe_evict@evict-beng-small-external: - bat-adlp-7: NOTRUN -> [SKIP][27] ([Intel XE#261] / [Intel XE#688]) +15 other tests skip [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@xe_evict@evict-beng-small-external.html * igt@xe_exec_fault_mode@many-basic: - bat-dg2-oem2: NOTRUN -> [SKIP][28] ([Intel XE#288]) +17 other tests skip [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@xe_exec_fault_mode@many-basic.html * igt@xe_exec_fault_mode@twice-userptr-invalidate: - bat-adlp-7: NOTRUN -> [SKIP][29] ([Intel XE#288]) +17 other tests skip [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@xe_exec_fault_mode@twice-userptr-invalidate.html * igt@xe_exec_fault_mode@twice-userptr-invalidate-imm: - bat-atsm-2: NOTRUN -> [SKIP][30] ([Intel XE#288]) +17 other tests skip [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@xe_exec_fault_mode@twice-userptr-invalidate-imm.html * igt@xe_huc_copy@huc_copy: - bat-atsm-2: NOTRUN -> [SKIP][31] ([Intel XE#255]) [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-atsm-2/igt@xe_huc_copy@huc_copy.html - bat-dg2-oem2: NOTRUN -> [SKIP][32] ([Intel XE#255]) [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-dg2-oem2/igt@xe_huc_copy@huc_copy.html * igt@xe_mmap@vram: - bat-adlp-7: NOTRUN -> [SKIP][33] ([Intel XE#263]) [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/bat-adlp-7/igt@xe_mmap@vram.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [Intel XE#255]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/255 [Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261 [Intel XE#263]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/263 [Intel XE#282]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/282 [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288 [Intel XE#400]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/400 [Intel XE#423]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/423 [Intel XE#480]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/480 [Intel XE#524]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/524 [Intel XE#535]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/535 [Intel XE#540]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/540 [Intel XE#541]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/541 [Intel XE#608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/608 [Intel XE#609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/609 [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616 [Intel XE#623]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/623 [Intel XE#624]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/624 [Intel XE#672]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/672 [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688 [Intel XE#692]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/692 [Intel XE#773]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/773 [Intel XE#780]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/780 [Intel XE#782]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/782 [Intel XE#783]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/783 [Intel XE#784]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/784 [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836 [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017 [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274 [i915#6077]: https://gitlab.freedesktop.org/drm/intel/issues/6077 Build changes ------------- * IGT: IGT_7581 -> IGTPW_10156 * Linux: xe-484-b11007e91f8785a96903d9d3c3d1efbe7e969eaf -> xe-485-b3890fb4386dcef68a96888141c4cc773f6241ce IGTPW_10156: 10156 IGT_7581: 7581 xe-484-b11007e91f8785a96903d9d3c3d1efbe7e969eaf: b11007e91f8785a96903d9d3c3d1efbe7e969eaf xe-485-b3890fb4386dcef68a96888141c4cc773f6241ce: b3890fb4386dcef68a96888141c4cc773f6241ce == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10156/index.html [-- Attachment #2: Type: text/html, Size: 13247 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for lib/igt_kms: Fix memory corruption (rev4) 2023-11-10 4:06 [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Vignesh Raman 2023-11-10 4:50 ` [igt-dev] ✗ CI.xeBAT: failure for lib/igt_kms: Fix memory corruption (rev4) Patchwork @ 2023-11-10 5:04 ` Patchwork 2023-11-10 6:06 ` [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Modem, Bhanuprakash 2 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2023-11-10 5:04 UTC (permalink / raw) To: Vignesh Raman; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 10361 bytes --] == Series Details == Series: lib/igt_kms: Fix memory corruption (rev4) URL : https://patchwork.freedesktop.org/series/125599/ State : failure == Summary == CI Bug Log - changes from CI_DRM_13859 -> IGTPW_10156 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_10156 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_10156, please notify your bug team (lgci.bug.filing@intel.com) 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_10156/index.html Participating hosts (33 -> 32) ------------------------------ Additional (1): bat-dg2-9 Missing (2): fi-kbl-soraka bat-adlp-11 Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_10156: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@live@hangcheck: - bat-mtlp-6: [PASS][1] -> [DMESG-WARN][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/bat-mtlp-6/igt@i915_selftest@live@hangcheck.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-mtlp-6/igt@i915_selftest@live@hangcheck.html * igt@i915_selftest@live@reset: - fi-apl-guc: [PASS][3] -> [DMESG-WARN][4] +36 other tests dmesg-warn [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@i915_selftest@live@reset.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@i915_selftest@live@reset.html Known issues ------------ Here are the changes found in IGTPW_10156 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_mmap@basic: - bat-dg2-9: NOTRUN -> [SKIP][5] ([i915#4083]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@gem_mmap@basic.html * igt@gem_mmap_gtt@basic: - bat-dg2-9: NOTRUN -> [SKIP][6] ([i915#4077]) +2 other tests skip [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@gem_mmap_gtt@basic.html * igt@gem_render_tiled_blits@basic: - bat-dg2-9: NOTRUN -> [SKIP][7] ([i915#4079]) +1 other test skip [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@gem_render_tiled_blits@basic.html * igt@i915_module_load@reload: - fi-apl-guc: [PASS][8] -> [DMESG-WARN][9] ([i915#180] / [i915#1982] / [i915#8585]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@i915_module_load@reload.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@i915_module_load@reload.html * igt@i915_pm_rpm@module-reload: - fi-apl-guc: [PASS][10] -> [DMESG-WARN][11] ([i915#180] / [i915#8585]) +2 other tests dmesg-warn [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@i915_pm_rpm@module-reload.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@i915_pm_rpm@module-reload.html * igt@i915_pm_rps@basic-api: - bat-dg2-9: NOTRUN -> [SKIP][12] ([i915#6621]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@i915_pm_rps@basic-api.html * igt@kms_addfb_basic@addfb25-4-tiled: - fi-apl-guc: [PASS][13] -> [DMESG-WARN][14] ([i915#8585] / [i915#8703]) +40 other tests dmesg-warn [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@kms_addfb_basic@addfb25-4-tiled.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@kms_addfb_basic@addfb25-4-tiled.html * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: - bat-dg2-9: NOTRUN -> [SKIP][15] ([i915#5190]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html * igt@kms_addfb_basic@basic-y-tiled-legacy: - bat-dg2-9: NOTRUN -> [SKIP][16] ([i915#4215] / [i915#5190]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_addfb_basic@basic-y-tiled-legacy.html * igt@kms_addfb_basic@framebuffer-vs-set-tiling: - bat-dg2-9: NOTRUN -> [SKIP][17] ([i915#4212]) +6 other tests skip [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_addfb_basic@framebuffer-vs-set-tiling.html * igt@kms_addfb_basic@tile-pitch-mismatch: - bat-dg2-9: NOTRUN -> [SKIP][18] ([i915#4212] / [i915#5608]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_addfb_basic@tile-pitch-mismatch.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: - bat-dg2-9: NOTRUN -> [SKIP][19] ([i915#4103] / [i915#4213] / [i915#5608]) +1 other test skip [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html * igt@kms_flip@basic-flip-vs-dpms@c-dp1: - fi-apl-guc: [PASS][20] -> [DMESG-WARN][21] ([i915#180] / [i915#8585] / [i915#8703]) +31 other tests dmesg-warn [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@kms_flip@basic-flip-vs-dpms@c-dp1.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@kms_flip@basic-flip-vs-dpms@c-dp1.html * igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1: - fi-apl-guc: [PASS][22] -> [DMESG-WARN][23] ([i915#180] / [i915#1982] / [i915#8585] / [i915#8703]) +1 other test dmesg-warn [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/fi-apl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/fi-apl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html * igt@kms_force_connector_basic@force-load-detect: - bat-dg2-9: NOTRUN -> [SKIP][24] ([fdo#109285]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_force_connector_basic@prune-stale-modes: - bat-dg2-9: NOTRUN -> [SKIP][25] ([i915#5274]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_force_connector_basic@prune-stale-modes.html * igt@kms_psr@sprite_plane_onoff: - bat-dg2-9: NOTRUN -> [SKIP][26] ([i915#1072]) +3 other tests skip [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_psr@sprite_plane_onoff.html * igt@kms_setmode@basic-clone-single-crtc: - bat-dg2-9: NOTRUN -> [SKIP][27] ([i915#3555] / [i915#4098]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@kms_setmode@basic-clone-single-crtc.html * igt@prime_vgem@basic-fence-flip: - bat-dg2-9: NOTRUN -> [SKIP][28] ([i915#3708]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@prime_vgem@basic-fence-flip.html * igt@prime_vgem@basic-fence-mmap: - bat-dg2-9: NOTRUN -> [SKIP][29] ([i915#3708] / [i915#4077]) +1 other test skip [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@prime_vgem@basic-fence-mmap.html * igt@prime_vgem@basic-write: - bat-dg2-9: NOTRUN -> [SKIP][30] ([i915#3291] / [i915#3708]) +2 other tests skip [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-9/igt@prime_vgem@basic-write.html #### Possible fixes #### * igt@i915_selftest@live@hangcheck: - bat-dg2-11: [DMESG-FAIL][31] -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/bat-dg2-11/igt@i915_selftest@live@hangcheck.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-dg2-11/igt@i915_selftest@live@hangcheck.html * igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1: - bat-rplp-1: [ABORT][33] ([i915#8668]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13859/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708 [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077 [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079 [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083 [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212 [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213 [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215 [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190 [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608 [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621 [i915#8585]: https://gitlab.freedesktop.org/drm/intel/issues/8585 [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668 [i915#8703]: https://gitlab.freedesktop.org/drm/intel/issues/8703 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7581 -> IGTPW_10156 CI-20190529: 20190529 CI_DRM_13859: 9155ae0ae05f320d84eaf2c4e81413bf937a5f3c @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_10156: 10156 IGT_7581: 7581 Testlist changes ---------------- +++ 744 lines --- 0 lines == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10156/index.html [-- Attachment #2: Type: text/html, Size: 12607 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption 2023-11-10 4:06 [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Vignesh Raman 2023-11-10 4:50 ` [igt-dev] ✗ CI.xeBAT: failure for lib/igt_kms: Fix memory corruption (rev4) Patchwork 2023-11-10 5:04 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork @ 2023-11-10 6:06 ` Modem, Bhanuprakash 2023-11-10 6:52 ` Vignesh Raman 2 siblings, 1 reply; 5+ messages in thread From: Modem, Bhanuprakash @ 2023-11-10 6:06 UTC (permalink / raw) To: Vignesh Raman, daniels, igt-dev; +Cc: helen.koike Hi Vignesh, On Fri-10-11-2023 09:36 am, Vignesh Raman wrote: > virtio-gpu kernel driver, which provides KMS, reports 16 for count_crtcs > which exceeds IGT_MAX_PIPES set to 8. The function igt_display_require > allocates memory for IGT_MAX_PIPES members of igt_pipe_t structures, > but then writes into it based on the count_crtcs reported by the kernel, > resulting in memory corruption. > > # malloc(): corrupted top size > # Received signal SIGABRT. > # Stack trace: > # #0 [fatal_sig_handler+0x17b] > # #1 [__sigaction+0x40] > # #2 [pthread_key_delete+0x14c] > # #3 [gsignal+0x12] > # #4 [abort+0xd3] > # #5 [__fsetlocking+0x290] > # #6 [timer_settime+0x37a] > # #7 [__default_morecore+0x1f1b] > # #8 [__libc_calloc+0x161] > # #9 [drmModeGetPlaneResources+0x44] > # #10 [igt_display_require+0x194] > # #11 [__igt_unique____real_main1356+0x93c] > # #12 [main+0x3f] > # #13 [__libc_init_first+0x8a] > # #14 [__libc_start_main+0x85] > # #15 [_start+0x21] > > Increase IGT_MAX_PIPES to 16 to fix this memory corruption issue. > igt_display_require initializes display and allocate resources as > a prerequisite for the tests. Fail the test if count_crtcs exceeds > IGT_MAX_PIPES with debug information. Additionally, update the test > documentation to cover up to 16 pipes, and blacklist tests from > pipe-i to pipe-p on both the XE blocklist and the intel-ci blacklist. > > This fix is required for drm-ci to run igt tests on virtio-gpu. > > Reviewed-by: Daniel Stone <daniels@collabora.com> > Acked-by: Helen Koike <helen.koike@collabora.com> > Suggested-by: Daniel Stone <daniels@collabora.com> > Suggested-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> > Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com> > --- > lib/igt_kms.c | 6 +++++- > lib/igt_kms.h | 20 +++++++++++++++++++- > tests/intel-ci/blacklist.txt | 10 +++++++++- > tests/intel-ci/xe.blocklist.txt | 6 +++--- > tests/intel/kms_ccs.c | 24 ++++++++++++++++++++++++ > tests/kms_bw.c | 2 +- Probably, you need to split this patch into 3. 1- lib 2- tests 3- intel-ci > 6 files changed, 61 insertions(+), 7 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 453103f90..6ad7cc127 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -906,7 +906,7 @@ static igt_plane_t *igt_get_assigned_primary(igt_output_t *output, igt_pipe_t *p > */ > const char *kmstest_pipe_name(enum pipe pipe) > { > - static const char str[] = "A\0B\0C\0D\0E\0F\0G\0H"; > + static const char str[] = "A\0B\0C\0D\0E\0F\0G\0H\0I\0J\0K\0L\0M\0N\0O\0P"; > > _Static_assert(sizeof(str) == IGT_MAX_PIPES * 2, > "Missing pipe name"); > @@ -2770,6 +2770,10 @@ void igt_display_require(igt_display_t *display, int drm_fd) > } > #endif > > + igt_assert_f(resources->count_crtcs <= IGT_MAX_PIPES, --------^ Could be igt_require_f()? IMHO, we need to skip the test instead of fail. Since it is a basic requirement to fill display struct. > + "count_crtcs exceeds IGT_MAX_PIPES, resources->count_crtcs=%d, IGT_MAX_PIPES=%d\n", > + resources->count_crtcs, IGT_MAX_PIPES); > + > display->n_pipes = IGT_MAX_PIPES; > display->pipes = calloc(sizeof(igt_pipe_t), display->n_pipes); > igt_assert_f(display->pipes, "Failed to allocate memory for %d pipes\n", display->n_pipes); > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 9028ab9be..5c705b585 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -57,6 +57,16 @@ > * @PIPE_D: Fourth crtc. > * @PIPE_E: Fifth crtc. > * @PIPE_F: Sixth crtc. > + * @PIPE_G: Seventh crtc. > + * @PIPE_H: Eighth crtc. > + * @PIPE_I: Ninth crtc. > + * @PIPE_J: Tenth crtc. > + * @PIPE_K: Eleventh crtc. > + * @PIPE_L: Twelfth crtc. > + * @PIPE_M: Thirteenth crtc. > + * @PIPE_N: Fourteenth crtc. > + * @PIPE_O: Fifteenth crtc. > + * @PIPE_P: Sixteenth crtc. > * @IGT_MAX_PIPES: Max number of pipes allowed. > */ > enum pipe { > @@ -70,7 +80,15 @@ enum pipe { > PIPE_F, > PIPE_G, > PIPE_H, > - IGT_MAX_PIPES > + PIPE_I, > + PIPE_J, > + PIPE_K, > + PIPE_L, > + PIPE_M, > + PIPE_N, > + PIPE_O, > + PIPE_P, > + IGT_MAX_PIPES > }; > const char *kmstest_pipe_name(enum pipe pipe); > int kmstest_pipe_to_index(char pipe); > diff --git a/tests/intel-ci/blacklist.txt b/tests/intel-ci/blacklist.txt > index e13759d3e..e439e2af4 100644 > --- a/tests/intel-ci/blacklist.txt > +++ b/tests/intel-ci/blacklist.txt > @@ -117,12 +117,20 @@ igt@gem_ctx_isolation@.*-s4 > ############################################### > igt@i915_suspend@shrink > ############################################### > -# pipe-e, pipe-f, pipe-g, pipe-h no current HW support > +# pipe-e, pipe-f, pipe-g, pipe-h, pipe-i, pipe-j, pipe-k, pipe-l, pipe-m, pipe-n, pipe-o, pipe-p no current HW support > ############################################### > igt@.*@.*pipe-e($|-.*) > igt@.*@.*pipe-f($|-.*) > igt@.*@.*pipe-g($|-.*) > igt@.*@.*pipe-h($|-.*) > +igt@.*@.*pipe-i($|-.*) > +igt@.*@.*pipe-j($|-.*) > +igt@.*@.*pipe-k($|-.*) > +igt@.*@.*pipe-l($|-.*) > +igt@.*@.*pipe-m($|-.*) > +igt@.*@.*pipe-n($|-.*) > +igt@.*@.*pipe-o($|-.*) > +igt@.*@.*pipe-p($|-.*) Shall we simplify the regex as below? igt@.*@.*pipe-[e-pE-P]($|-.*) > > ############################################### > # Temporary workarounds for CI-impacting bugs > diff --git a/tests/intel-ci/xe.blocklist.txt b/tests/intel-ci/xe.blocklist.txt > index 135ab18a3..bec6ee23b 100644 > --- a/tests/intel-ci/xe.blocklist.txt > +++ b/tests/intel-ci/xe.blocklist.txt > @@ -44,11 +44,11 @@ igt@syncobj_.* > igt@template > igt@tools_test > ################################################################## > -# KMS: Pipe E, F, G and H are not available on Intel hardware, > +# KMS: Pipe E, F, G, H, I, J, K, L, M, N, O and P are not available on Intel hardware, > # hence can't use more than 4 displays. > ################################################################## > -igt@.*@.*pipe-(e|f|g|h).* > -igt@kms_bw@.*-(5|6|7|8)-displays-.* > +igt@.*@.*pipe-(e|f|g|h|i|j|k|l|m|n|o|p).* > +igt@kms_bw@.*-(5|6|7|8|9|10|11|12|13|14|15|16)-displays-.* igt@.*@.*pipe-[e-pE-P].* igt@kms_bw@.*-([5-9]|1[0-6])-displays-.* I used to validate my regex at https://regex101.com/ You can get my R-b after addressing above comments. - Bhanu > ################################################################## > # KMS: Tests specific to i915 driver > ################################################################## > diff --git a/tests/intel/kms_ccs.c b/tests/intel/kms_ccs.c > index 93e837b84..6dc30ac24 100644 > --- a/tests/intel/kms_ccs.c > +++ b/tests/intel/kms_ccs.c > @@ -53,6 +53,14 @@ > * @pipe-F: Pipe F > * @pipe-G: Pipe G > * @pipe-H: Pipe H > + * @pipe-I: Pipe I > + * @pipe-J: Pipe J > + * @pipe-K: Pipe K > + * @pipe-L: Pipe L > + * @pipe-M: Pipe M > + * @pipe-N: Pipe N > + * @pipe-O: Pipe O > + * @pipe-P: Pipe P > * > * arg[2]: > * > @@ -90,6 +98,14 @@ > * @pipe-F: Pipe F > * @pipe-G: Pipe G > * @pipe-H: Pipe H > + * @pipe-I: Pipe I > + * @pipe-J: Pipe J > + * @pipe-K: Pipe K > + * @pipe-L: Pipe L > + * @pipe-M: Pipe M > + * @pipe-N: Pipe N > + * @pipe-O: Pipe O > + * @pipe-P: Pipe P > * > * arg[2]: > * > @@ -131,6 +147,14 @@ > * @pipe-F: Pipe F > * @pipe-G: Pipe G > * @pipe-H: Pipe H > + * @pipe-I: Pipe I > + * @pipe-J: Pipe J > + * @pipe-K: Pipe K > + * @pipe-L: Pipe L > + * @pipe-M: Pipe M > + * @pipe-N: Pipe N > + * @pipe-O: Pipe O > + * @pipe-P: Pipe P > * > * arg[2]: > * > diff --git a/tests/kms_bw.c b/tests/kms_bw.c > index 5f9a020da..896114a3a 100644 > --- a/tests/kms_bw.c > +++ b/tests/kms_bw.c > @@ -37,7 +37,7 @@ > * Mega feature: General Display Features > * Test category: functionality test > * > - * arg[1].values: 1, 2, 3, 4, 5, 6, 7, 8 > + * arg[1].values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 > * > * arg[2]: > * ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption 2023-11-10 6:06 ` [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Modem, Bhanuprakash @ 2023-11-10 6:52 ` Vignesh Raman 0 siblings, 0 replies; 5+ messages in thread From: Vignesh Raman @ 2023-11-10 6:52 UTC (permalink / raw) To: Modem, Bhanuprakash, daniels, igt-dev; +Cc: helen.koike Hi Bhanu, On 10/11/23 11:36, Modem, Bhanuprakash wrote: >> --- >> lib/igt_kms.c | 6 +++++- >> lib/igt_kms.h | 20 +++++++++++++++++++- >> tests/intel-ci/blacklist.txt | 10 +++++++++- >> tests/intel-ci/xe.blocklist.txt | 6 +++--- >> tests/intel/kms_ccs.c | 24 ++++++++++++++++++++++++ >> tests/kms_bw.c | 2 +- > > Probably, you need to split this patch into 3. > > 1- lib > 2- tests > 3- intel-ci Sure, will split the changes into 3 commits. >> @@ -2770,6 +2770,10 @@ void igt_display_require(igt_display_t >> *display, int drm_fd) >> } >> #endif >> + igt_assert_f(resources->count_crtcs <= IGT_MAX_PIPES, > --------^ > Could be igt_require_f()? > > IMHO, we need to skip the test instead of fail. Since it is a basic > requirement to fill display struct. Okay, will skip the test. I was going through the failures mentioned in https://patchwork.freedesktop.org/series/125599/ Are these known issues? >> --- a/tests/intel-ci/blacklist.txt >> +++ b/tests/intel-ci/blacklist.txt >> @@ -117,12 +117,20 @@ igt@gem_ctx_isolation@.*-s4 >> ############################################### >> igt@i915_suspend@shrink >> ############################################### >> -# pipe-e, pipe-f, pipe-g, pipe-h no current HW support >> +# pipe-e, pipe-f, pipe-g, pipe-h, pipe-i, pipe-j, pipe-k, pipe-l, >> pipe-m, pipe-n, pipe-o, pipe-p no current HW support >> ############################################### >> igt@.*@.*pipe-e($|-.*) >> igt@.*@.*pipe-f($|-.*) >> igt@.*@.*pipe-g($|-.*) >> igt@.*@.*pipe-h($|-.*) >> +igt@.*@.*pipe-i($|-.*) >> +igt@.*@.*pipe-j($|-.*) >> +igt@.*@.*pipe-k($|-.*) >> +igt@.*@.*pipe-l($|-.*) >> +igt@.*@.*pipe-m($|-.*) >> +igt@.*@.*pipe-n($|-.*) >> +igt@.*@.*pipe-o($|-.*) >> +igt@.*@.*pipe-p($|-.*) > > Shall we simplify the regex as below? > > igt@.*@.*pipe-[e-pE-P]($|-.*) Yes, this looks good. > >> ############################################### >> # Temporary workarounds for CI-impacting bugs >> diff --git a/tests/intel-ci/xe.blocklist.txt >> b/tests/intel-ci/xe.blocklist.txt >> index 135ab18a3..bec6ee23b 100644 >> --- a/tests/intel-ci/xe.blocklist.txt >> +++ b/tests/intel-ci/xe.blocklist.txt >> @@ -44,11 +44,11 @@ igt@syncobj_.* >> igt@template >> igt@tools_test >> ################################################################## >> -# KMS: Pipe E, F, G and H are not available on Intel hardware, >> +# KMS: Pipe E, F, G, H, I, J, K, L, M, N, O and P are not available >> on Intel hardware, >> # hence can't use more than 4 displays. >> ################################################################## >> -igt@.*@.*pipe-(e|f|g|h).* >> -igt@kms_bw@.*-(5|6|7|8)-displays-.* >> +igt@.*@.*pipe-(e|f|g|h|i|j|k|l|m|n|o|p).* >> +igt@kms_bw@.*-(5|6|7|8|9|10|11|12|13|14|15|16)-displays-.* > > igt@.*@.*pipe-[e-pE-P].* > igt@kms_bw@.*-([5-9]|1[0-6])-displays-.* > > I used to validate my regex at https://regex101.com/ > > You can get my R-b after addressing above comments. Thank you. Regards, Vignesh ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-11-10 6:53 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-11-10 4:06 [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Vignesh Raman 2023-11-10 4:50 ` [igt-dev] ✗ CI.xeBAT: failure for lib/igt_kms: Fix memory corruption (rev4) Patchwork 2023-11-10 5:04 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork 2023-11-10 6:06 ` [igt-dev] [PATCH i-g-t v4] lib/igt_kms: Fix memory corruption Modem, Bhanuprakash 2023-11-10 6:52 ` Vignesh Raman
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox