Skip to contentSkip to conversation

runner/job_list: print error when job list is empty

PATCH In review Simon Ser 3 participants 8 messages Mar 21, 2019 – Apr 16, 2019

lore
Share & tools
lore

Simon Ser

author
#0 lore raw

PATCH 1/1 runner/job_list: print error when job list is empty

Using a filter that doesn't match any test name resulted in the runner silently failing. Print an error message so that the user understands why the runner fails.

---
 runner/job_list.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
runner/job_list.c +6 -1
index 97bbb0be..f5c16af3 100644
@@ -133,6 +133,7 @@ static bool filtered_job_list(struct job_list *job_list,
 {
 	FILE *f;
 	char buf[128];
+	bool ok;
 
 	if (job_list->entries != NULL) {
 		fprintf(stderr, "Caller didn't clear the job list, this shouldn't happen\n");
@@ -179,7 +180,11 @@ static bool filtered_job_list(struct job_list *job_list,
 			     &settings->exclude_regexes);
 	}
 
-	return job_list->size != 0;
+	ok = job_list->size != 0;
+	if (!ok) {
+		fprintf(stderr, "Filter didn't match any job name\n");
+	}
+	return ok;
 }
 
 static bool job_list_from_test_list(struct job_list *job_list,
Signature · 17 lines
2.21.0

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

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

[igt-dev] ✓ Fi.CI.BAT: success for runner/job_list: print error when job list is empty

== Series Details ==

== Series Details ==

Series: runner/job_list: print error when job list is empty
URL : https://patchwork.freedesktop.org/series/58354/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_5787 -> IGTPW_2681
====================================================

Summary
-------

**SUCCESS**

No regressions found.

External URL: https://patchwork.freedesktop.org/api/1.0/series/58354/revisions/1/mbox/

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

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

### IGT changes ###

#### Issues hit ####

* igt@gem_exec_basic@gtt-bsd:
- fi-bwr-2160: NOTRUN -> SKIP [fdo#109271] +103

* igt@gem_exec_basic@readonly-bsd1:
- fi-snb-2520m: NOTRUN -> SKIP [fdo#109271] +57

* igt@kms_busy@basic-flip-a:
- fi-bsw-n3050: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +1

* igt@kms_busy@basic-flip-c:
- fi-bwr-2160: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
- fi-snb-2520m: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]

* igt@kms_chamelium@hdmi-crc-fast:
- fi-bsw-n3050: NOTRUN -> SKIP [fdo#109271] +62

* igt@kms_force_connector_basic@force-load-detect:
- fi-bxt-j4205: NOTRUN -> SKIP [fdo#109271] +47

* igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence:
- fi-byt-clapper: PASS -> FAIL [fdo#103191] / [fdo#107362] +1

* igt@kms_pipe_crc_basic@read-crc-pipe-b:
- fi-byt-clapper: PASS -> FAIL [fdo#107362]

* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
- fi-blb-e6850: NOTRUN -> INCOMPLETE [fdo#107718]

* igt@prime_vgem@basic-fence-flip:
- fi-gdg-551: PASS -> DMESG-FAIL [fdo#103182]

#### Possible fixes ####

* igt@i915_selftest@live_execlists:
- fi-apl-guc: INCOMPLETE [fdo#103927] / [fdo#109720] -> PASS

* igt@kms_busy@basic-flip-a:
- fi-gdg-551: FAIL [fdo#103182] -> PASS

* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-blb-e6850: INCOMPLETE [fdo#107718] -> PASS

[fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109720]: https://bugs.freedesktop.org/show_bug.cgi?id=109720

Participating hosts (42 -> 38)
------------------------------

Additional (4): fi-bxt-j4205 fi-bwr-2160 fi-snb-2520m fi-bsw-n3050
Missing (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-n2820 fi-bdw-samus

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

* IGT: IGT_4896 -> IGTPW_2681

CI_DRM_5787: 8a27af0b94f56d403bc7806a64a50013a2dd9396 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2681: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2681/
IGT_4896: 0f9c061247fb7aba21c9459f19f437927a28f32c @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

#2 lore raw

[igt-dev] ✓ Fi.CI.IGT: success for runner/job_list: print error when job list is empty

In reply to Simon Ser
== Series Details ==

== Series Details ==

Series: runner/job_list: print error when job list is empty
URL : https://patchwork.freedesktop.org/series/58354/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_5787_full -> IGTPW_2681_full
====================================================

Summary
-------

**SUCCESS**

No regressions found.

External URL: https://patchwork.freedesktop.org/api/1.0/series/58354/revisions/1/mbox/

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

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

### IGT changes ###

#### Issues hit ####

* igt@gem_ctx_isolation@vcs0-s3:
- shard-kbl: PASS -> INCOMPLETE [fdo#103665]

* igt@gem_exec_basic@basic-bsd1:
- shard-glk: NOTRUN -> SKIP [fdo#109271] +19

* igt@gem_wait@wait-bsd2:
- shard-snb: NOTRUN -> SKIP [fdo#109271] +33

* igt@kms_busy@basic-flip-d:
- shard-glk: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]

* igt@kms_busy@extended-modeset-hang-newfb-render-b:
- shard-kbl: NOTRUN -> DMESG-WARN [fdo#107956]

* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
- shard-hsw: PASS -> DMESG-WARN [fdo#107956]

* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
- shard-kbl: PASS -> DMESG-WARN [fdo#107956] +2

* igt@kms_busy@extended-pageflip-hang-oldfb-render-e:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +2

* igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-pwrite:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] +41

* igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb:
- shard-kbl: NOTRUN -> FAIL [fdo#108145]

* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max:

    - shard-glk:          PASS -> FAIL [fdo#108145]
    - shard-kbl:          PASS -> FAIL [fdo#108145]
    - shard-apl:          PASS -> FAIL [fdo#108145]

* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-mid:
- shard-snb: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +2

* igt@kms_universal_plane@disable-primary-vs-flip-pipe-d:
- shard-apl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]

* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-snb: PASS -> INCOMPLETE [fdo#105411]

* igt@kms_vblank@pipe-c-ts-continuation-suspend:
- shard-apl: PASS -> FAIL [fdo#104894]
- shard-kbl: PASS -> FAIL [fdo#104894]

* igt@prime_nv_test@i915_import_pread_pwrite:
- shard-apl: NOTRUN -> SKIP [fdo#109271]

#### Possible fixes ####

* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
- shard-snb: DMESG-WARN [fdo#107956] -> PASS

* igt@kms_cursor_crc@cursor-128x42-sliding:
- shard-kbl: FAIL [fdo#103232] -> PASS +1
- shard-apl: FAIL [fdo#103232] -> PASS +1

* {igt@kms_plane@pixel-format-pipe-c-planes-source-clamping}:
- shard-glk: SKIP [fdo#109271] -> PASS

* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max:

    - shard-glk:          FAIL [fdo#108145] -> PASS
    - shard-kbl:          FAIL [fdo#108145] -> PASS
    - shard-apl:          FAIL [fdo#108145] -> PASS

* igt@kms_rotation_crc@multiplane-rotation-cropping-bottom:
- shard-kbl: DMESG-FAIL [fdo#105763] -> PASS

* igt@kms_setmode@basic:
- shard-apl: FAIL [fdo#99912] -> PASS

* igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm:
- shard-apl: FAIL [fdo#104894] -> PASS

* igt@perf_pmu@rc6-runtime-pm-long:
- shard-apl: FAIL [fdo#105010] -> PASS
- shard-kbl: FAIL [fdo#105010] -> PASS

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

[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
[fdo#105010]: https://bugs.freedesktop.org/show_bug.cgi?id=105010
[fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
[fdo#105763]: https://bugs.freedesktop.org/show_bug.cgi?id=105763
[fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912

Participating hosts (10 -> 5)
------------------------------

Missing (5): shard-skl pig-hsw-4770r pig-glk-j5005 shard-iclb pig-skl-6260u

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

* IGT: IGT_4896 -> IGTPW_2681
* Piglit: piglit_4509 -> None

CI_DRM_5787: 8a27af0b94f56d403bc7806a64a50013a2dd9396 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2681: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2681/
IGT_4896: 0f9c061247fb7aba21c9459f19f437927a28f32c @ 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_2681/
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#3 lore raw
In reply to Simon Ser
Quoted 23 lines · Simon Ser

Using a filter that doesn't match any test name resulted in the runner silently failing. Print an error message so that the user understands why the runner fails.

---
 runner/job_list.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
runner/job_list.c +1 -0
index 97bbb0be..f5c16af3 100644
@@ -133,6 +133,7 @@ static bool filtered_job_list(struct job_list *job_list,
 {
 	FILE *f;
 	char buf[128];
+	bool ok;
 
 	if (job_list->entries != NULL) {
 		fprintf(stderr, "Caller didn't clear the job list, this shouldn't happen\n");
@@ -179,7 +180,11 @@ static bool filtered_job_list(struct job_list *job_list,
 			     &settings->exclude_regexes);

runner/job_list.c static bool filtered_job_list(struct job_list *job_list, · line 189

Quoted 10 lines
runner/job_list.c +5 -1
 	}
 
-	return job_list->size != 0;
+	ok = job_list->size != 0;
+	if (!ok) {
+		fprintf(stderr, "Filter didn't match any job name\n");
+	}
+	return ok;
 }
 

A unit test for this would be lovely (runner/runner_tests.c).

Signature · 5 lines
Petri Latvala
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
author
#4 lore raw
Quoted 31 lines · Petri Latvala
Quoted 30 lines · Simon Ser

Using a filter that doesn't match any test name resulted in the runner
silently failing. Print an error message so that the user understands
why the runner fails.

---
 runner/job_list.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
runner/job_list.c +1 -0
index 97bbb0be..f5c16af3 100644
@@ -133,6 +133,7 @@ static bool filtered_job_list(struct job_list
 *job_list,
 {
 	FILE *f;
 	char buf[128];
+	bool ok;
 
 	if (job_list->entries != NULL) {

fprintf(stderr, "Caller didn't clear the job list, this
shouldn't happen\n");

runner/job_list.c +0 -0
@@ -179,7 +180,11 @@ static bool filtered_job_list(struct job_list
 *job_list,
 			     &settings->exclude_regexes);
 	}
 
Quoted 10 lines

runner/job_list.c static bool filtered_job_list(struct job_list *job_list, · line 189

Quoted 8 lines
runner/job_list.c +5 -1
-	return job_list->size != 0;
+	ok = job_list->size != 0;
+	if (!ok) {
+		fprintf(stderr, "Filter didn't match any job name\n");
+	}
+	return ok;
 }
 

A unit test for this would be lovely (runner/runner_tests.c).

Do you mean adding a test that checks that an error message is printed? Or do you mean adding a test that checks that filtered_job_list fails when no test is matched?
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki
Business Identity Code: 0357606 - 4
Domiciled in Helsinki

This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

Reviewed-by
#5 lore raw
Quoted 43 lines · Simon
Quoted 31 lines · Petri Latvala
Quoted 30 lines · Simon Ser

Using a filter that doesn't match any test name resulted in the runner
silently failing. Print an error message so that the user understands
why the runner fails.

---
 runner/job_list.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
runner/job_list.c +1 -0
index 97bbb0be..f5c16af3 100644
@@ -133,6 +133,7 @@ static bool filtered_job_list(struct job_list
 *job_list,
 {
 	FILE *f;
 	char buf[128];
+	bool ok;
 
 	if (job_list->entries != NULL) {

fprintf(stderr, "Caller didn't clear the job list, this
shouldn't happen\n");

runner/job_list.c +0 -0
@@ -179,7 +180,11 @@ static bool filtered_job_list(struct job_list
 *job_list,
 			     &settings->exclude_regexes);
 	}
 
Quoted 10 lines

runner/job_list.c static bool filtered_job_list(struct job_list *job_list, · line 189

Quoted 8 lines
runner/job_list.c +5 -1
-	return job_list->size != 0;
+	ok = job_list->size != 0;
+	if (!ok) {
+		fprintf(stderr, "Filter didn't match any job name\n");
+	}
+	return ok;
 }
 

A unit test for this would be lovely (runner/runner_tests.c).

Quoted 3 lines

Do you mean adding a test that checks that an error message is printed? Or do you mean adding a test that checks that filtered_job_list fails when no test is matched?

Oh wait I misunderstood the patch completely! I thought you changed it to fail when nothing matched! Disregard that comment.

An actual comment: We use the kernel coding style, so one-liner if blocks should omit the braces. (Probably still a ton of violations of this in runner/*...)

With that,

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

author
#6 lore raw
Quoted 7 lines · Petri Latvala

An actual comment: We use the kernel coding style, so one-liner if blocks should omit the braces. (Probably still a ton of violations of this in runner/*...)

With that,

Hi Petri,

Do you want me to send a v2 with this fixed?

Thanks,

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

#7 lore raw
Quoted 5 lines · Simon
Quoted 4 lines · Petri Latvala

An actual comment: We use the kernel coding style, so one-liner if blocks should omit the braces. (Probably still a ton of violations of this in runner/*...)

Quoted 7 lines
Quoted 3 lines

With that,

Hi Petri,

Do you want me to send a v2 with this fixed?

Nah, I fixed it up and merged the patch. Sorry for leaving you hanging.

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