runner: Use glib's regex utilities instead of POSIX ERE
PATCH 1/1 runner: Use glib's regex utilities instead of POSIX ERE
From: Lyude Paul <[email protected]>
POSIX ERE, while pretty standard is also very old and severely limited. In fact, it's so limited that Intel CI's own test blacklist, tests/intel-ci/blacklist.txt, doesn't even work with it due to the lack of support for backreferences.
Since we're already using glib in other parts of igt, let's just start using glib's regular expression matching instead of the POSIX regex API. This gives us full perl compatible regular expressions and in turn, also gives us python compatible regular expressions to match piglit.
--- runner/job_list.c | 4 +--- runner/meson.build | 2 +- runner/resultgen.c | 15 +++++++++------ runner/settings.c | 26 ++++++++++---------------- runner/settings.h | 4 ++-- 5 files changed, 23 insertions(+), 28 deletions(-)
runner/job_list.c +1 -3
@@ -17,10 +17,8 @@ static bool matches_any(const char *str, struct regex_list *list)size_t i;for (i =0 ; i < list->size; i++) { -if (regexec (list->regexes[i], str, - (size_t )0 ,NULL ,0 ) ==0 ) { +if (g_regex_match (list->regexes[i], str,0 ,NULL ))return true; - } }return false;
runner/meson.build +1 -1
@@ -17,7 +17,7 @@ if _build_runner and jsonc.found() runnerlib = static_library('igt_runner', runnerlib_sources, include_directories : inc, - dependencies : jsonc) + dependencies : [jsonc, glib]) runner = executable('igt_runner', runner_sources, link_with : runnerlib,
runner/resultgen.c +9 -6
@@ -499,14 +499,17 @@ static const char igt_dmesg_whitelist[] =static const char igt_piglit_style_dmesg_blacklist[] ="(\\[drm:|drm_|intel_|i915_)" ; -static bool init_regex_whitelist (struct settings * settings,regex_t * re) +static bool init_regex_whitelist (struct settings * settings,GRegex **re) { +GError *err =NULL ;const char *regex = settings->piglit_style_dmesg ? igt_piglit_style_dmesg_blacklist : igt_dmesg_whitelist; -if (regcomp (re, regex,REG_EXTENDED |REG_NOSUB ) !=0 ) { + *re =g_regex_new (regex,G_REGEX_OPTIMIZE ,0 , &err); +if (err) {fprintf (stderr,"Cannot compile dmesg regexp\n" ); +g_error_free (err);return false; }
@@ -630,7 +633,7 @@ static bool fill_from_dmesg(int fd,char piglit_name[256 ];ssize_t read;size_t i; -regex_t re; +GRegex *re;if (!f) {return false;
@@ -671,12 +674,12 @@ static bool fill_from_dmesg(int fd,if (settings->piglit_style_dmesg) {if ((flags &0x07 ) <= settings->dmesg_warn_level && continuation !='c' && -regexec (&re, message, (size_t )0 ,NULL ,0 ) !=REG_NOMATCH ) { +g_regex_match (re, message,0 ,NULL )) {append_line (&warnings, &warningslen, formatted); } }else {if ((flags &0x07 ) <= settings->dmesg_warn_level && continuation !='c' && -regexec (&re, message, (size_t )0 ,NULL ,0 ) ==REG_NOMATCH ) { + !g_regex_match (re, message,0 ,NULL )) {append_line (&warnings, &warningslen, formatted); } }
@@ -715,7 +718,7 @@ static bool fill_from_dmesg(int fd,free (dmesg);free (warnings); -regfree (&re); +g_regex_unref (re);fclose (f);return true; }
runner/settings.c +10 -16
@@ -187,23 +187,18 @@ static void usage(const char *extra_message, FILE *f)static bool add_regex (struct regex_list *list,char *new) { -regex_t *regex; -size_t buflen; -char *buf; -int s; - - regex =malloc (sizeof (*regex)); - -if ((s =regcomp (regex, new, -REG_EXTENDED |REG_NOSUB )) !=0 ) { - buflen =regerror (s, regex,NULL ,0 ); - buf =malloc (buflen); -regerror (s, regex, buf, buflen); +GRegex *regex; +GError *error =NULL ; + + regex =g_regex_new (new,G_REGEX_OPTIMIZE ,0 , &error); +if (error) { +char *buf =malloc (snprintf (NULL ,0 ,"Invalid regex '%s': %s" , new, error->message) +1 ); + +sprintf (buf,"Invalid regex '%s': %s" , new, error->message);usage (buf, stderr);free (buf); -regfree (regex); -free (regex); +g_error_free (error);return false; }
@@ -224,8 +219,7 @@ static void free_regexes(struct regex_list *regexes)for (i =0 ; i < regexes->size; i++) {free (regexes->regex_strings[i]); -regfree (regexes->regexes[i]); -free (regexes->regexes[i]); +g_regex_unref (regexes->regexes[i]); }free (regexes->regex_strings);free (regexes->regexes);
runner/settings.h +2 -2
@@ -4,8 +4,8 @@#include <stdbool.h> #include <stddef.h> #include <sys/types.h> -#include <regex.h> #include <stdio.h> +#include <glib.h> enum {LOG_LEVEL_NORMAL =0 ,
@@ -21,7 +21,7 @@ _Static_assert(ABORT_ALL == (ABORT_TAINT | ABORT_LOCKDEP), "ABORT_ALL must be alstruct regex_list {char **regex_strings; -regex_t ** regexes; +GRegex **regexes;size_t size; };
Signature · 6 lines
2.20.1 _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev
Patchwork
CI[igt-dev] ✓ Fi.CI.BAT: success for runner: Use glib's regex utilities instead of POSIX ERE
== Series Details ==
== Series Details ==
Series: runner: Use glib's regex utilities instead of POSIX ERE
URL : https://patchwork.freedesktop.org/series/60487/
State : success
== Summary ==
CI Bug Log - changes from IGT_4978 -> IGTPW_2961
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/60487/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2961 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s3:
- fi-apl-guc: [PASS][1] -> [DMESG-WARN][2] ([fdo#110512])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-apl-guc/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-apl-guc/igt@[email protected]
#### Possible fixes ####
* igt@amdgpu/amd_basic@userptr:
- fi-kbl-8809g: [DMESG-WARN][3] ([fdo#108965]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-kbl-8809g/igt@amdgpu/[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-kbl-8809g/igt@amdgpu/[email protected]
* igt@gem_ctx_switch@basic-default:
- {fi-icl-u2}: [INCOMPLETE][5] ([fdo#107713] / [fdo#108569]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-icl-u2/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-icl-u2/igt@[email protected]
* igt@i915_selftest@live_contexts:
- fi-bdw-gvtdvm: [DMESG-FAIL][7] ([fdo#110235]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html
* igt@i915_selftest@live_hangcheck:
- fi-skl-iommu: [INCOMPLETE][9] ([fdo#108602] / [fdo#108744]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-apl-guc: [DMESG-WARN][11] ([fdo#110512]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-apl-guc/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-apl-guc/igt@[email protected]
#### Warnings ####
* igt@i915_selftest@live_hangcheck:
- fi-apl-guc: [DMESG-FAIL][13] ([fdo#110620]) -> [INCOMPLETE][14] ([fdo#103927])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
* igt@runner@aborted:
- fi-apl-guc: [FAIL][15] ([fdo#110622]) -> [FAIL][16] ([fdo#110624])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/fi-apl-guc/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/fi-apl-guc/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#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#108602]: https://bugs.freedesktop.org/show_bug.cgi?id=108602
[fdo#108744]: https://bugs.freedesktop.org/show_bug.cgi?id=108744
[fdo#108965]: https://bugs.freedesktop.org/show_bug.cgi?id=108965
[fdo#110235]: https://bugs.freedesktop.org/show_bug.cgi?id=110235
[fdo#110512]: https://bugs.freedesktop.org/show_bug.cgi?id=110512
[fdo#110620]: https://bugs.freedesktop.org/show_bug.cgi?id=110620
[fdo#110622]: https://bugs.freedesktop.org/show_bug.cgi?id=110622
[fdo#110624]: https://bugs.freedesktop.org/show_bug.cgi?id=110624
Participating hosts (50 -> 42)
------------------------------
Missing (8): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-blb-e6850 fi-byt-clapper fi-cml-u
Build changes
-------------
* IGT: IGT_4978 -> IGTPW_2961
CI_DRM_6072: 645586708589c3d2ac81114595e875cdfbbff385 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2961: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/
IGT_4978: b9b3646d4f04dd0204ead2a1a10f9e1806a0b622 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
Quoted 11 lines · Lyude
From: Lyude Paul <[email protected]>
POSIX ERE, while pretty standard is also very old and severely limited. In fact, it's so limited that Intel CI's own test blacklist,
tests/intel-ci/blacklist.txt, doesn't even work with it due to the lack of support for backreferences.Since we're already using glib in other parts of igt, let's just start using glib's regular expression matching instead of the POSIX regex API. This gives us full perl compatible regular expressions and in turn, also gives us python compatible regular expressions to match piglit.
Side note: a more portable alternative would be PCRE.
Quoted 157 lines
Signed-off-by Lyude Paul <[email protected]>--- runner/job_list.c | 4 +--- runner/meson.build | 2 +- runner/resultgen.c | 15 +++++++++------ runner/settings.c | 26 ++++++++++---------------- runner/settings.h | 4 ++-- 5 files changed, 23 insertions(+), 28 deletions(-)runner/job_list.c +1
-3@@ -17,10 +17,8 @@ static bool matches_any(const char *str, struct regex_list *list)size_t i;for (i =0 ; i < list->size; i++) { -if (regexec (list->regexes[i], str, - (size_t )0 ,NULL ,0 ) ==0 ) { +if (g_regex_match (list->regexes[i], str,0 ,NULL ))return true; - } }return false;runner/meson.build +1
-1@@ -17,7 +17,7 @@ if _build_runner and jsonc.found() runnerlib = static_library('igt_runner', runnerlib_sources, include_directories : inc, - dependencies : jsonc) + dependencies : [jsonc, glib]) runner = executable('igt_runner', runner_sources, link_with : runnerlib,runner/resultgen.c +9
-6@@ -499,14 +499,17 @@ static const char igt_dmesg_whitelist[] =static const char igt_piglit_style_dmesg_blacklist[] ="(\\[drm:|drm_|intel_|i915_)" ; -static bool init_regex_whitelist (struct settings * settings,regex_t * re) +static bool init_regex_whitelist (struct settings * settings,GRegex **re) { +GError *err =NULL ;const char *regex = settings->piglit_style_dmesg ? igt_piglit_style_dmesg_blacklist : igt_dmesg_whitelist; -if (regcomp (re, regex,REG_EXTENDED |REG_NOSUB ) !=0 ) { + *re =g_regex_new (regex,G_REGEX_OPTIMIZE ,0 , &err); +if (err) {fprintf (stderr,"Cannot compile dmesg regexp\n" ); +g_error_free (err);return false; }@@ -630,7 +633,7 @@ static bool fill_from_dmesg(int fd,char piglit_name[256 ];ssize_t read;size_t i; -regex_t re; +GRegex *re;if (!f) {return false;@@ -671,12 +674,12 @@ static bool fill_from_dmesg(int fd,if (settings->piglit_style_dmesg) {if ((flags &0x07 ) <= settings->dmesg_warn_level && continuation !='c' && -regexec (&re, message, (size_t )0 ,NULL ,0 ) !=REG_NOMATCH ) { +g_regex_match (re, message,0 ,NULL )) {append_line (&warnings, &warningslen, formatted); } }else {if ((flags &0x07 ) <= settings->dmesg_warn_level && continuation !='c' && -regexec (&re, message, (size_t )0 ,NULL ,0 ) ==REG_NOMATCH ) { + !g_regex_match (re, message,0 ,NULL )) {append_line (&warnings, &warningslen, formatted); } }@@ -715,7 +718,7 @@ static bool fill_from_dmesg(int fd,free (dmesg);free (warnings); -regfree (&re); +g_regex_unref (re);fclose (f);return true; }runner/settings.c +10
-16@@ -187,23 +187,18 @@ static void usage(const char *extra_message, FILE *f)static bool add_regex (struct regex_list *list,char *new) { -regex_t *regex; -size_t buflen; -char *buf; -int s; - - regex =malloc (sizeof (*regex)); - -if ((s =regcomp (regex, new, -REG_EXTENDED |REG_NOSUB )) !=0 ) { - buflen =regerror (s, regex,NULL ,0 ); - buf =malloc (buflen); -regerror (s, regex, buf, buflen); +GRegex *regex; +GError *error =NULL ; + + regex =g_regex_new (new,G_REGEX_OPTIMIZE ,0 , &error); +if (error) { +char *buf =malloc (snprintf (NULL ,0 ,"Invalid regex '%s': %s" , new, error->message) +1 ); + +sprintf (buf,"Invalid regex '%s': %s" , new, error->message);usage (buf, stderr);free (buf); -regfree (regex); -free (regex); +g_error_free (error);return false; }@@ -224,8 +219,7 @@ static void free_regexes(struct regex_list *regexes)for (i =0 ; i < regexes->size; i++) {free (regexes->regex_strings[i]); -regfree (regexes->regexes[i]); -free (regexes->regexes[i]); +g_regex_unref (regexes->regexes[i]); }free (regexes->regex_strings);free (regexes->regexes);runner/settings.h +1
-1@@ -4,8 +4,8 @@#include <stdbool.h> #include <stddef.h> #include <sys/types.h> -#include <regex.h> #include <stdio.h> +#include <glib.h> enum {LOG_LEVEL_NORMAL =0 ,
runner/settings.h _Static_assert(ABORT_ALL == (ABORT_TAINT | ABORT_LOCKDEP), "ABORT_ALL must be al · line 27
Quoted 8 lines
runner/settings.h +1
-1@@ -21,7 +21,7 @@ _Static_assert(ABORT_ALL == (ABORT_TAINT | ABORT_LOCKDEP), "ABORT_ALL must be alstruct regex_list {char **regex_strings; -regex_t ** regexes; +GRegex **regexes;size_t size; };
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
Patchwork
CI[igt-dev] ✓ Fi.CI.IGT: success for runner: Use glib's regex utilities instead of POSIX ERE
In reply to Lyude== Series Details ==
== Series Details ==
Series: runner: Use glib's regex utilities instead of POSIX ERE
URL : https://patchwork.freedesktop.org/series/60487/
State : success
== Summary ==
CI Bug Log - changes from IGT_4978_full -> IGTPW_2961_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/60487/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2961_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_workarounds@suspend-resume:
- shard-apl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +3 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-apl4/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-apl4/igt@[email protected]
* igt@kms_dp_dsc@basic-dsc-enable-edp:
- shard-iclb: [PASS][3] -> [SKIP][4] ([fdo#109349])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb2/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb7/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite:
- shard-iclb: [PASS][5] -> [FAIL][6] ([fdo#103167]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb4/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb1/igt@[email protected]
* igt@kms_psr2_su@frontbuffer:
- shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#109642])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb2/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb8/igt@[email protected]
* igt@kms_psr@psr2_sprite_mmap_gtt:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#109441]) +2 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb5/igt@kms_psr@psr2_sprite_mmap_gtt.html
* igt@kms_rotation_crc@multiplane-rotation-cropping-bottom:
- shard-kbl: [PASS][11] -> [DMESG-FAIL][12] ([fdo#105763])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-kbl5/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-kbl7/igt@[email protected]
* igt@tools_test@tools_test:
- shard-apl: [PASS][13] -> [SKIP][14] ([fdo#109271])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-apl3/igt@tools_test@tools_test.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-apl7/igt@tools_test@tools_test.html
#### Possible fixes ####
* igt@i915_pm_rpm@dpms-mode-unset-lpsp:
- shard-iclb: [INCOMPLETE][15] ([fdo#107713] / [fdo#108840]) -> [PASS][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb5/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb3/igt@[email protected]
* igt@i915_suspend@debugfs-reader:
- shard-apl: [DMESG-WARN][17] ([fdo#108566]) -> [PASS][18] +7 similar issues
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-apl4/igt@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-apl5/igt@[email protected]
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-hsw: [FAIL][19] ([fdo#105767]) -> [PASS][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-hsw6/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-hsw6/igt@[email protected]
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
- shard-glk: [FAIL][21] ([fdo#105363]) -> [PASS][22] +1 similar issue
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-glk1/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-glk2/igt@[email protected]
* igt@kms_flip@dpms-vs-vblank-race-interruptible:
- shard-glk: [FAIL][23] ([fdo#103060]) -> [PASS][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-glk4/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-glk9/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render:
- shard-iclb: [FAIL][25] ([fdo#103167]) -> [PASS][26] +1 similar issue
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_psr2_su@page_flip:
- shard-iclb: [SKIP][27] ([fdo#109642]) -> [PASS][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb1/igt@kms_psr2_su@page_flip.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb2/igt@kms_psr2_su@page_flip.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [SKIP][29] ([fdo#109441]) -> [PASS][30] +3 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb6/igt@kms_psr@psr2_sprite_plane_move.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
* igt@kms_sysfs_edid_timing:
- shard-iclb: [FAIL][31] ([fdo#100047]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4978/shard-iclb3/igt@kms_sysfs_edid_timing.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/shard-iclb5/igt@kms_sysfs_edid_timing.html
[fdo#100047]: https://bugs.freedesktop.org/show_bug.cgi?id=100047
[fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#105763]: https://bugs.freedesktop.org/show_bug.cgi?id=105763
[fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#108840]: https://bugs.freedesktop.org/show_bug.cgi?id=108840
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
Participating hosts (7 -> 6)
------------------------------
Missing (1): shard-skl
Build changes
-------------
* IGT: IGT_4978 -> IGTPW_2961
CI_DRM_6072: 645586708589c3d2ac81114595e875cdfbbff385 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2961: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/
IGT_4978: b9b3646d4f04dd0204ead2a1a10f9e1806a0b622 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2961/
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
Quoted 6 lines · Lyude
From: Lyude Paul <[email protected]>
POSIX ERE, while pretty standard is also very old and severely limited. In fact, it's so limited that Intel CI's own test blacklist,
tests/intel-ci/blacklist.txt, doesn't even work with it due to the lack of support for backreferences.
Side note: Even with these changes, nothing can currently eat blacklist.txt as is. Sitting tightly in my TODO is to implement the final piece of the pipeline that CI uses piglit for with igt_runner, scripts/run-tests.sh -l, with something that can process blacklist.txt. These changes are the first step towards that, thanks for doing this.
In other words, this doesn't implement what I guess you're trying to do but it's needed, so
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
Quoted 15 lines · Petri Latvala
Quoted 6 lines · Lyude
From: Lyude Paul <[email protected]>
POSIX ERE, while pretty standard is also very old and severely limited. In fact, it's so limited that Intel CI's own test blacklist,
tests/intel-ci/blacklist.txt, doesn't even work with it due to the lack of support for backreferences.Side note: Even with these changes, nothing can currently eat blacklist.txt as is. Sitting tightly in my TODO is to implement the final piece of the pipeline that CI uses piglit for with
igt_runner,scripts/run-tests.sh-l, with something that can process blacklist.txt. These changes are the first step towards that, thanks for doing this.
Quoted 2 lines
In other words, this doesn't implement what I guess you're trying to do but it's needed, so
sidenote: I have an ansible playbook I use for processing the blacklist as well, when I was referring to the intel-ci blacklist I was just referring to the actual entries in it - I'm aware this doesn't let you pass the blacklist directly to igt! But, I figured having behavior like this would enable something like you're trying to do and make us more consistent with piglit anyway
Anyway-thanks for the review! will push in a moment
Quoted 2 lines
Reviewed-by Petri Latvala <[email protected]>
Signature · 7 lines
Cheers, Lyude Paul _______________________________________________ igt-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/igt-dev