* [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib.
2024-01-12 8:55 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
@ 2024-01-12 8:55 ` Kunal Joshi
2024-01-18 9:28 ` Modem, Bhanuprakash
0 siblings, 1 reply; 12+ messages in thread
From: Kunal Joshi @ 2024-01-12 8:55 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
move bigjoiner_mode_found to lib/igt_kms with some modification
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_kms.c | 19 +++++++++++++++++++
lib/igt_kms.h | 3 +++
tests/intel/kms_big_joiner.c | 14 ++------------
3 files changed, 24 insertions(+), 12 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index e4dea1a60..2c55af05f 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -6142,6 +6142,25 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
mode->clock > max_dotclock);
}
+/**
+ * bigjoiner_mode_found:
+ * @connector: libdrm connector
+ * @sort_method: comparator method
+ * @mode: libdrm mode
+ *
+ * Returns: True if big joiner found in connector modes
+ */
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int (*sort_method)(const void *, const void*),
+ drmModeModeInfo *mode)
+{
+ igt_sort_connector_modes(connector, sort_method);
+ *mode = connector->modes[0];
+
+ return igt_bigjoiner_possible(mode,
+ igt_get_max_dotclock(drm_fd));
+}
+
/**
* igt_check_bigjoiner_support:
* @display: a pointer to an #igt_display_t structure
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b3882808b..9f5676d35 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -1212,6 +1212,9 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
igt_output_t *output, int bpc);
int igt_get_max_dotclock(int fd);
bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int (*sort_method)(const void *, const void*),
+ drmModeModeInfo *mode);
bool igt_check_bigjoiner_support(igt_display_t *display);
bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
bool intel_pipe_output_combo_valid(igt_display_t *display);
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index aba2adfbe..1858c6362 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-static bool bigjoiner_mode_found(drmModeConnector *connector,
- int (*sort_method)(const void *, const void*),
- drmModeModeInfo *mode)
-{
- igt_sort_connector_modes(connector, sort_method);
- *mode = connector->modes[0];
-
- return igt_bigjoiner_possible(mode, max_dotclock);
-}
-
igt_main
{
data_t data;
@@ -235,8 +225,8 @@ igt_main
* Bigjoiner will come in to the picture when the
* resolution > 5K or clock > max-dot-clock.
*/
- found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
- bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
+ found = (bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_res_dsc, &mode) ||
+ bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_clk_dsc, &mode)) ?
true : false;
if (found) {
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib.
2024-01-15 10:58 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
@ 2024-01-15 10:58 ` Kunal Joshi
0 siblings, 0 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-01-15 10:58 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
move bigjoiner_mode_found to lib/igt_kms with some modification
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_kms.c | 18 ++++++++++++++++++
lib/igt_kms.h | 3 +++
tests/intel/kms_big_joiner.c | 14 ++------------
3 files changed, 23 insertions(+), 12 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index e4dea1a60..cb6d57c2d 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -6142,6 +6142,24 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
mode->clock > max_dotclock);
}
+/**
+ * bigjoiner_mode_found:
+ * @connector: libdrm connector
+ * @sort_method: comparator method
+ * @mode: libdrm mode
+ *
+ * Returns: True if big joiner found in connector modes
+ */
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int (*sort_method)(const void *, const void*),
+ drmModeModeInfo *mode, int max_dotclock)
+{
+ igt_sort_connector_modes(connector, sort_method);
+ *mode = connector->modes[0];
+
+ return igt_bigjoiner_possible(mode, max_dotclock);
+}
+
/**
* igt_check_bigjoiner_support:
* @display: a pointer to an #igt_display_t structure
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b3882808b..d4464c51a 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -1212,6 +1212,9 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
igt_output_t *output, int bpc);
int igt_get_max_dotclock(int fd);
bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int (*sort_method)(const void *, const void*),
+ drmModeModeInfo *mode, int max_dotclock);
bool igt_check_bigjoiner_support(igt_display_t *display);
bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
bool intel_pipe_output_combo_valid(igt_display_t *display);
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index aba2adfbe..80344d411 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-static bool bigjoiner_mode_found(drmModeConnector *connector,
- int (*sort_method)(const void *, const void*),
- drmModeModeInfo *mode)
-{
- igt_sort_connector_modes(connector, sort_method);
- *mode = connector->modes[0];
-
- return igt_bigjoiner_possible(mode, max_dotclock);
-}
-
igt_main
{
data_t data;
@@ -235,8 +225,8 @@ igt_main
* Bigjoiner will come in to the picture when the
* resolution > 5K or clock > max-dot-clock.
*/
- found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
- bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
+ found = (bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_res_dsc, &mode, max_dotclock) ||
+ bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_clk_dsc, &mode, max_dotclock)) ?
true : false;
if (found) {
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib.
2024-01-12 8:55 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
@ 2024-01-18 9:28 ` Modem, Bhanuprakash
0 siblings, 0 replies; 12+ messages in thread
From: Modem, Bhanuprakash @ 2024-01-18 9:28 UTC (permalink / raw)
To: Kunal Joshi, igt-dev
Hi Kunal,
On 12-01-2024 02:25 pm, Kunal Joshi wrote:
> move bigjoiner_mode_found to lib/igt_kms with some modification
>
> Cc: Karthik B S <karthik.b.s@intel.com>
> Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
> lib/igt_kms.c | 19 +++++++++++++++++++
> lib/igt_kms.h | 3 +++
> tests/intel/kms_big_joiner.c | 14 ++------------
> 3 files changed, 24 insertions(+), 12 deletions(-)
>
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index e4dea1a60..2c55af05f 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -6142,6 +6142,25 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
> mode->clock > max_dotclock);
> }
>
> +/**
> + * bigjoiner_mode_found:
> + * @connector: libdrm connector
> + * @sort_method: comparator method
> + * @mode: libdrm mode
> + *
> + * Returns: True if big joiner found in connector modes
> + */
> +bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
> + int (*sort_method)(const void *, const void*),
> + drmModeModeInfo *mode)
> +{
> + igt_sort_connector_modes(connector, sort_method);
> + *mode = connector->modes[0];
IMHO, Instead of calling this helper multiple times with different sort
methods, let's consolidate here only. Example below:
bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
int max_dotclock)
{
igt_sort_connector_modes(connector, sort_drm_modes_by_res_dsc);
if (igt_bigjoiner_possible(&connector->modes[0], max_dotclock))
return true;
igt_sort_connector_modes(connector, sort_drm_modes_by_clk_dsc);
return igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
}
> +
> + return igt_bigjoiner_possible(mode,
> + igt_get_max_dotclock(drm_fd));
> +}
> +
> /**
> * igt_check_bigjoiner_support:
> * @display: a pointer to an #igt_display_t structure
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index b3882808b..9f5676d35 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -1212,6 +1212,9 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
> igt_output_t *output, int bpc);
> int igt_get_max_dotclock(int fd);
> bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
> +bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
> + int (*sort_method)(const void *, const void*),
> + drmModeModeInfo *mode);
> bool igt_check_bigjoiner_support(igt_display_t *display);
> bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
> bool intel_pipe_output_combo_valid(igt_display_t *display);
> diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
> index aba2adfbe..1858c6362 100644
> --- a/tests/intel/kms_big_joiner.c
> +++ b/tests/intel/kms_big_joiner.c
> @@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
> igt_display_commit2(display, COMMIT_ATOMIC);
> }
>
> -static bool bigjoiner_mode_found(drmModeConnector *connector,
> - int (*sort_method)(const void *, const void*),
> - drmModeModeInfo *mode)
> -{
> - igt_sort_connector_modes(connector, sort_method);
> - *mode = connector->modes[0];
> -
> - return igt_bigjoiner_possible(mode, max_dotclock);
> -}
> -
> igt_main
> {
> data_t data;
> @@ -235,8 +225,8 @@ igt_main
> * Bigjoiner will come in to the picture when the
> * resolution > 5K or clock > max-dot-clock.
> */
> - found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
> - bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
> + found = (bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_res_dsc, &mode) ||
> + bigjoiner_mode_found(data.drm_fd, connector, sort_drm_modes_by_clk_dsc, &mode)) ?
> true : false;
>
> if (found) {
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib.
2024-01-18 10:46 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
@ 2024-01-18 10:46 ` Kunal Joshi
0 siblings, 0 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-01-18 10:46 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
move bigjoiner_mode_found to lib/igt_kms with some modification
v2: combine both big joiner checks (Bhanu)
Cc: Swati Sharma <swati2.sharma@intel.com>
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_kms.c | 22 ++++++++++++++++++++++
lib/igt_kms.h | 2 ++
tests/intel/kms_big_joiner.c | 14 +-------------
3 files changed, 25 insertions(+), 13 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 1b4d0d761..7a07e62f8 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -6142,6 +6142,28 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
mode->clock > max_dotclock);
}
+/**
+ * bigjoiner_mode_found:
+ * @connector: libdrm connector
+ * @sort_method: comparator method
+ * @mode: libdrm mode
+ *
+ * Returns: True if big joiner found in connector modes
+ */
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock)
+{
+ bool found = false;
+
+ igt_sort_connector_modes(connector, sort_drm_modes_by_res_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ if (!found) {
+ igt_sort_connector_modes(connector, sort_drm_modes_by_clk_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ }
+ return found;
+}
+
/**
* igt_check_bigjoiner_support:
* @display: a pointer to an #igt_display_t structure
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b3882808b..488637d4b 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -1212,6 +1212,8 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
igt_output_t *output, int bpc);
int igt_get_max_dotclock(int fd);
bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock);
bool igt_check_bigjoiner_support(igt_display_t *display);
bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
bool intel_pipe_output_combo_valid(igt_display_t *display);
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index aba2adfbe..28678b958 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-static bool bigjoiner_mode_found(drmModeConnector *connector,
- int (*sort_method)(const void *, const void*),
- drmModeModeInfo *mode)
-{
- igt_sort_connector_modes(connector, sort_method);
- *mode = connector->modes[0];
-
- return igt_bigjoiner_possible(mode, max_dotclock);
-}
-
igt_main
{
data_t data;
@@ -235,9 +225,7 @@ igt_main
* Bigjoiner will come in to the picture when the
* resolution > 5K or clock > max-dot-clock.
*/
- found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
- bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
- true : false;
+ found = bigjoiner_mode_found(data.drm_fd, connector, max_dotclock);
if (found) {
data.output[count].output_id = output->id;
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH i-g-t 0/2] revamp big joiner test
@ 2024-03-05 16:36 Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-03-05 16:36 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
big joiner outputs are statically assigned to pipe,
rewrite to assign dynamically
Kunal Joshi (2):
lib/igt_kms: move bigjoiner_mode_found to lib
tests/intel/kms_big_joiner: revamp kms_big_joiner
lib/igt_kms.c | 25 +++
lib/igt_kms.h | 2 +
tests/intel/kms_big_joiner.c | 402 ++++++++++++++++-------------------
3 files changed, 213 insertions(+), 216 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
@ 2024-03-05 16:36 ` Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 2/2] tests/intel/kms_big_joiner: revamp kms_big_joiner Kunal Joshi
` (4 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-03-05 16:36 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Karthik B S, Bhanuprakash Modem
move bigjoiner_mode_found to lib
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_kms.c | 25 +++++++++++++++++++++++++
lib/igt_kms.h | 2 ++
tests/intel/kms_big_joiner.c | 14 +-------------
3 files changed, 28 insertions(+), 13 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index e18f6fe59..63c8045c7 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -6143,6 +6143,31 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
mode->clock > max_dotclock);
}
+/**
+ * bigjoiner_mode_found:
+ * @connector: libdrm connector
+ * @sort_method: comparator method
+ * @mode: libdrm mode
+ *
+ * Bigjoiner will come in to the picture when the
+ * resolution > 5K or clock > max-dot-clock.
+ *
+ * Returns: True if big joiner found in connector modes
+ */
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock)
+{
+ bool found = false;
+
+ igt_sort_connector_modes(connector, sort_drm_modes_by_res_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ if (!found) {
+ igt_sort_connector_modes(connector, sort_drm_modes_by_clk_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ }
+ return found;
+}
+
/**
* igt_check_bigjoiner_support:
* @display: a pointer to an #igt_display_t structure
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b3882808b..bab8487d3 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -1212,6 +1212,8 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
igt_output_t *output, int bpc);
int igt_get_max_dotclock(int fd);
bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock);
bool igt_check_bigjoiner_support(igt_display_t *display);
bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
bool intel_pipe_output_combo_valid(igt_display_t *display);
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index aba2adfbe..28678b958 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-static bool bigjoiner_mode_found(drmModeConnector *connector,
- int (*sort_method)(const void *, const void*),
- drmModeModeInfo *mode)
-{
- igt_sort_connector_modes(connector, sort_method);
- *mode = connector->modes[0];
-
- return igt_bigjoiner_possible(mode, max_dotclock);
-}
-
igt_main
{
data_t data;
@@ -235,9 +225,7 @@ igt_main
* Bigjoiner will come in to the picture when the
* resolution > 5K or clock > max-dot-clock.
*/
- found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
- bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
- true : false;
+ found = bigjoiner_mode_found(data.drm_fd, connector, max_dotclock);
if (found) {
data.output[count].output_id = output->id;
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH i-g-t 2/2] tests/intel/kms_big_joiner: revamp kms_big_joiner
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
@ 2024-03-05 16:36 ` Kunal Joshi
2024-03-05 18:51 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev4) Patchwork
` (3 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-03-05 16:36 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Karthik B S, Bhanuprakash Modem
big joiner outputs are statically assigned to pipe,
rewrite to assign dynamically
v2: Don't change license (Bhanu)
Add documentation for generate_combinations (Bhanu)
Print the pipe name (Bhanu)
Remove unwanted commit (Bhanu)
Move combine output logic to igt_fixture (Bhanu)
split revamp and force joiner (Bhanu)
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
tests/intel/kms_big_joiner.c | 392 +++++++++++++++++------------------
1 file changed, 187 insertions(+), 205 deletions(-)
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index 28678b958..2bbc23fb5 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -43,16 +43,19 @@
*
* SUBTEST: basic
* Description: Verify the basic modeset on big joiner mode on all pipes
- *
- * SUBTEST: 2x-modeset
- * Description: Verify simultaneous modeset on 2 big joiner outputs
*/
-
IGT_TEST_DESCRIPTION("Test big joiner");
-struct bigjoiner_output {
- uint32_t output_id;
- drmModeModeInfo mode;
+#define MAX_OUTPUTS 256
+#define MAX_COMBINATIONS 1000
+#define INVALID_TEST_OUTPUT 2
+typedef struct {
+ int combination[MAX_OUTPUTS];
+} Combination;
+
+enum joiner_type {
+ BIG_JOINER = 1 << 1,
+ INVALID_JOINER = -1,
};
typedef struct {
@@ -60,274 +63,253 @@ typedef struct {
igt_display_t display;
struct igt_fb fb;
int n_pipes;
- enum pipe pipe1;
- enum pipe pipe2;
- struct bigjoiner_output output[2];
+ uint64_t big_joiner_outputs[IGT_MAX_PIPES];
+ uint64_t non_big_joiner_outputs[IGT_MAX_PIPES];
+ uint64_t combined_outputs[IGT_MAX_PIPES];
+ int big_joiner_output_count;
+ int non_big_joiner_output_count;
+ int combined_output_count;
+ int output_count;
+ enum pipe pipe_seq[IGT_MAX_PIPES];
} data_t;
static int max_dotclock;
-static void test_invalid_modeset(data_t *data)
+/*
+ * The generate_combinations function generates combinations of pipe allocations
+ * for a given number of outputs
+ *
+ * @output_count: Number of outputs to allocate pipes for.
+ * @pipe_count: Total number of available pipes.
+ * @pipes_per_output: Number of pipes to be allocated for a single output.
+ * @combinations: Array to store generated combinations.
+ * @num_combinations: Pointer to a variable that stores the number of generated combinations.
+ *
+ * Example (output_count=2, pipe_count=4, pipes_per_output=2):
+ * Combination 1: 0 2
+ * Combination 2: 1 3
+*/
+static void generate_combinations(int output_count, int pipe_count,
+ int pipes_per_output,
+ Combination combinations[MAX_COMBINATIONS],
+ uint64_t *num_combinations)
{
- igt_output_t *output;
- igt_display_t *display = &data->display;
- int ret;
-
- igt_info("Bigjoiner test on ");
- for_each_connected_output(display, output){
- enum pipe p = output->pending_pipe;
- drmModeModeInfo *mode;
- igt_pipe_t *pipe;
- igt_plane_t *plane;
+ int i, index;
+ int current_combination[MAX_OUTPUTS];
- if (p == PIPE_NONE)
- continue;
+ for (i = 0; i < output_count; ++i)
+ current_combination[i] = i * pipes_per_output;
- mode = igt_output_get_mode(output);
- igt_info("pipe:%s, output:%s, mode:", kmstest_pipe_name(p), igt_output_name(output));
- kmstest_dump_mode(mode);
+ while (*num_combinations < MAX_COMBINATIONS && current_combination[0] <= pipe_count - output_count * pipes_per_output) {
+ for (i = 0; i < output_count; ++i)
+ combinations[*num_combinations].combination[i] = current_combination[i];
- pipe = &display->pipes[p];
- plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+ (*num_combinations)++;
- igt_plane_set_fb(plane, &data->fb);
- igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
- igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
- }
+ index = output_count - 1;
+ while (index >= 0 && current_combination[index] == pipe_count - (output_count - index) * pipes_per_output)
+ index--;
- igt_assert(!igt_check_bigjoiner_support(display));
+ if (index < 0)
+ break;
- /* This commit is expectd to fail as this pipe is being used for big joiner */
- ret = igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_TEST_ONLY |
- DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
+ current_combination[index]++;
+ for (i = index + 1; i < output_count; ++i)
+ current_combination[i] = current_combination[i - 1] + pipes_per_output;
+ }
+}
- igt_display_reset(&data->display);
- igt_display_commit2(display, COMMIT_ATOMIC);
+static igt_output_t *get_output_by_id_or_assert(data_t *data, uint64_t output_id)
+{
+ igt_output_t *output;
- igt_assert_lt(ret, 0);
+ for_each_connected_output(&data->display, output) {
+ if (output->id == output_id)
+ return output;
+ }
+ igt_assert("Output not found\n");
+ return NULL;
}
-static void test_basic_modeset(data_t *data)
+static void test_invalid_modeset_two_joiner(data_t *data, bool combined)
{
+ int i, j, ret;
+ igt_output_t *output;
+ uint64_t *outputs;
+ igt_plane_t *primary[INVALID_TEST_OUTPUT];
+ igt_fb_t fb[INVALID_TEST_OUTPUT];
drmModeModeInfo *mode;
- igt_output_t *output, *bigjoiner_output = NULL;
- igt_display_t *display = &data->display;
- igt_pipe_t *pipe;
- igt_plane_t *plane;
-
- igt_display_reset(display);
- for_each_connected_output(display, output) {
- if (data->output[0].output_id == output->id) {
- bigjoiner_output = output;
- break;
+ outputs = combined ? data->combined_outputs : data->big_joiner_outputs;
+
+ for (i = 0; i < data->n_pipes-1; i++) {
+ igt_display_reset(&data->display);
+ for (j = 0; j < INVALID_TEST_OUTPUT; j++) {
+ output = get_output_by_id_or_assert(data, outputs[j]);
+ igt_assert(output);
+ igt_output_set_pipe(output, data->pipe_seq[i + j]);
+ mode = igt_output_get_mode(output);
+ igt_info("Assigning pipe %s to %s with mode %dx%d@%d%s",
+ kmstest_pipe_name(data->pipe_seq[i + j]),
+ igt_output_name(output), mode->hdisplay,
+ mode->vdisplay, mode->vrefresh,
+ j == INVALID_TEST_OUTPUT - 1 ? "\n" : ", ");
+ primary[j] = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay, DRM_FORMAT_XRGB8888,
+ DRM_FORMAT_MOD_LINEAR, &fb[j]);
+ igt_plane_set_fb(primary[j], &fb[j]);
}
+ ret = igt_display_try_commit2(&data->display, COMMIT_ATOMIC);
+ igt_assert_f(ret != 0, "Commit shouldn't have passed\n");
}
-
- igt_output_set_pipe(bigjoiner_output, data->pipe1);
-
- mode = &data->output[0].mode;
- igt_output_override_mode(bigjoiner_output, mode);
-
- pipe = &display->pipes[data->pipe1];
- plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
- igt_plane_set_fb(plane, &data->fb);
- igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
- igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
-
- igt_display_commit2(display, COMMIT_ATOMIC);
-
- igt_output_set_pipe(bigjoiner_output, PIPE_NONE);
- igt_plane_set_fb(plane, NULL);
- igt_display_commit2(display, COMMIT_ATOMIC);
}
-static void test_dual_display(data_t *data)
+static void tets_big_joiner_on_last_pipe(data_t *data)
{
+ int i, ret;
+ uint64_t *outputs;
+ igt_output_t *output;
+ igt_plane_t *primary;
+ igt_fb_t fb;
drmModeModeInfo *mode;
- igt_output_t *output, *bigjoiner_output[2];
- igt_display_t *display = &data->display;
- igt_pipe_t *pipe;
- igt_plane_t *plane1, *plane2;
- int count = 0;
-
- igt_display_reset(display);
-
- for_each_connected_output(display, output) {
- if (data->output[count].output_id == output->id) {
- bigjoiner_output[count] = output;
- count++;
- }
- if (count > 1)
- break;
+ outputs = data->big_joiner_outputs;
+ for (i = 0; i < data->big_joiner_output_count; i++) {
+ igt_display_reset(&data->display);
+ output = get_output_by_id_or_assert(data, outputs[i]);
+ igt_output_set_pipe(output, data->pipe_seq[data->n_pipes - 1]);
+ mode = igt_output_get_mode(output);
+ igt_info("Assigning pipe %s to %s with mode %dx%d@%d\n",
+ kmstest_pipe_name(data->pipe_seq[data->n_pipes - 1]),
+ igt_output_name(output), mode->hdisplay,
+ mode->vdisplay, mode->vrefresh);
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay, DRM_FORMAT_XRGB8888,
+ DRM_FORMAT_MOD_LINEAR, &fb);
+ igt_plane_set_fb(primary, &fb);
+ ret = igt_display_try_commit2(&data->display, COMMIT_ATOMIC);
+ igt_assert_f(ret != 0, "Commit shouldn't have passed\n");
}
+}
- igt_output_set_pipe(bigjoiner_output[0], data->pipe1);
- igt_output_set_pipe(bigjoiner_output[1], data->pipe2);
-
- /* Set up first big joiner output on Pipe A*/
- mode = &data->output[0].mode;
- igt_output_override_mode(bigjoiner_output[0], mode);
-
- pipe = &display->pipes[data->pipe1];
- plane1 = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
- igt_plane_set_fb(plane1, &data->fb);
- igt_fb_set_size(&data->fb, plane1, mode->hdisplay, mode->vdisplay);
- igt_plane_set_size(plane1, mode->hdisplay, mode->vdisplay);
-
- /* Set up second big joiner output on Pipe C*/
- mode = &data->output[1].mode;
- igt_output_override_mode(bigjoiner_output[1], mode);
-
- pipe = &display->pipes[data->pipe2];
- plane2 = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
- igt_plane_set_fb(plane2, &data->fb);
- igt_fb_set_size(&data->fb, plane2, mode->hdisplay, mode->vdisplay);
- igt_plane_set_size(plane2, mode->hdisplay, mode->vdisplay);
-
- igt_display_commit2(display, COMMIT_ATOMIC);
+static void test_basic_modeset(data_t *data, int num_outputs,
+ Combination combinations[MAX_COMBINATIONS],
+ uint64_t num_combinations)
+{
+ int i, j, ret;
+ igt_display_t *display = &data->display;
+ igt_output_t *output[num_outputs];
+ igt_plane_t *primary[num_outputs];
+ igt_fb_t fb[num_outputs];
+ drmModeModeInfo *mode;
- /* Clean up */
- igt_output_set_pipe(bigjoiner_output[0], PIPE_NONE);
- igt_output_set_pipe(bigjoiner_output[1], PIPE_NONE);
- igt_plane_set_fb(plane1, NULL);
- igt_plane_set_fb(plane2, NULL);
- igt_display_commit2(display, COMMIT_ATOMIC);
+ for (i = 0; i < num_combinations; i++) {
+ igt_display_reset(display);
+ for (j = 0; j < num_outputs; j++) {
+ output[j] = get_output_by_id_or_assert(data,
+ data->big_joiner_outputs[j]);
+ igt_info("Assigning pipe %s to %s%s",
+ kmstest_pipe_name(data->pipe_seq[combinations[i].combination[j]]),
+ output[j]->name, j == num_outputs - 1 ? "\n" : ", ");
+ igt_output_set_pipe(output[j], data->pipe_seq[combinations[i].combination[j]]);
+ primary[j] = igt_output_get_plane_type(output[j], DRM_PLANE_TYPE_PRIMARY);
+ mode = igt_output_get_mode(output[j]);
+ igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay, DRM_FORMAT_XRGB8888,
+ DRM_FORMAT_MOD_LINEAR, &fb[j]);
+ igt_plane_set_fb(primary[j], &fb[j]);
+ }
+ ret = igt_display_try_commit2(display, COMMIT_ATOMIC);
+ igt_assert_f(ret == 0, "Commit failed\n");
+ }
}
igt_main
{
+ int i, j;
data_t data;
igt_output_t *output;
- drmModeModeInfo mode;
- int valid_output = 0, i, count = 0, j = 0;
- uint16_t width = 0, height = 0;
- enum pipe pipe_seq[IGT_MAX_PIPES];
+ drmModeModeInfo default_mode;
+ i = j = 0;
igt_fixture {
data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
kmstest_set_vt_graphics_mode();
-
igt_display_require(&data.display, data.drm_fd);
igt_require(data.display.is_atomic);
-
max_dotclock = igt_get_max_dotclock(data.drm_fd);
+ data.big_joiner_output_count = 0;
+ data.non_big_joiner_output_count = 0;
+ data.combined_output_count = 0;
+ data.output_count = 0;
for_each_connected_output(&data.display, output) {
bool found = false;
drmModeConnector *connector = output->config.connector;
-
- /*
- * Bigjoiner will come in to the picture when the
- * resolution > 5K or clock > max-dot-clock.
- */
found = bigjoiner_mode_found(data.drm_fd, connector, max_dotclock);
-
if (found) {
- data.output[count].output_id = output->id;
- memcpy(&data.output[count].mode, &mode, sizeof(drmModeModeInfo));
- count++;
-
- width = max(width, mode.hdisplay);
- height = max(height, mode.vdisplay);
+ data.big_joiner_outputs[data.big_joiner_output_count++] = output->id;
+ igt_output_override_mode(output, &connector->modes[0]);
+ } else {
+ data.non_big_joiner_outputs[data.non_big_joiner_output_count++] = output->id;
+ kmstest_get_connector_default_mode(data.drm_fd, connector, &default_mode);
+ igt_output_override_mode(output, &default_mode);
}
- valid_output++;
+ data.output_count++;
+ }
+
+ if (data.big_joiner_output_count == 1 && data.non_big_joiner_output_count > 0) {
+ data.combined_outputs[data.combined_output_count++] = data.big_joiner_outputs[0];
+ data.combined_outputs[data.combined_output_count++] = data.non_big_joiner_outputs[0];
}
data.n_pipes = 0;
for_each_pipe(&data.display, i) {
data.n_pipes++;
- pipe_seq[j] = i;
+ data.pipe_seq[j] = i;
j++;
}
-
- igt_require_f(count > 0, "No output with 5k+ mode (or) clock > max-dot-clock found\n");
-
- igt_create_pattern_fb(data.drm_fd, width, height, DRM_FORMAT_XRGB8888,
- DRM_FORMAT_MOD_LINEAR, &data.fb);
}
igt_describe("Verify the basic modeset on big joiner mode on all pipes");
igt_subtest_with_dynamic("basic") {
- for (i = 0; i < data.n_pipes - 1; i++) {
- data.pipe1 = pipe_seq[i];
- igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe_seq[i]))
- test_basic_modeset(&data);
+ igt_require_f(data.big_joiner_output_count > 0, "Big joiner output not found\n");
+ igt_require_f(data.n_pipes > 1, "Minimum of 2 pipes are required\n");
+
+ for (i = 0; i < data.big_joiner_output_count; i++) {
+ uint64_t num_combinations = 0;
+ Combination combinations[MAX_COMBINATIONS];
+
+ generate_combinations(i+1, data.n_pipes, BIG_JOINER, combinations, &num_combinations);
+ igt_info("Number of combinations for %d outputs and %d pipes are %ld\n",
+ i+1, data.n_pipes, num_combinations);
+
+ if (num_combinations > 0)
+ igt_dynamic_f("%dx-big-joiner", i+1)
+ test_basic_modeset(&data, i+1, combinations, num_combinations);
+ else
+ break;
}
}
- igt_describe("Verify if the modeset on the adjoining pipe is rejected "
- "when the pipe is active with a big joiner modeset");
igt_subtest_with_dynamic("invalid-modeset") {
- data.pipe1 = pipe_seq[j - 1];
+ igt_require_f(data.big_joiner_output_count > 0, "Big joiner output not found\n");
+ igt_require_f(data.n_pipes > 1, "Minimum of 2 pipes are required\n");
- igt_display_reset(&data.display);
- for_each_connected_output(&data.display, output) {
- if (data.output[0].output_id != output->id)
- continue;
-
- mode = data.output[0].mode;
- igt_output_set_pipe(output, data.pipe1);
- igt_output_override_mode(output, &mode);
-
- igt_dynamic_f("pipe-%s-%s",
- kmstest_pipe_name(data.pipe1),
- igt_output_name(output))
- test_invalid_modeset(&data);
- }
+ if (data.big_joiner_output_count >= 1)
+ igt_dynamic_f("big_joiner_on_last_pipe")
+ tets_big_joiner_on_last_pipe(&data);
- if(valid_output > 1) {
- for (i = 0; i < data.n_pipes - 1; i++) {
- igt_output_t *first_output = NULL, *second_output = NULL;
-
- data.pipe1 = pipe_seq[i];
- data.pipe2 = pipe_seq[i + 1];
-
- igt_display_reset(&data.display);
- for_each_connected_output(&data.display, output) {
- if (data.output[0].output_id == output->id) {
- first_output = output;
- mode = data.output[0].mode;
-
- igt_output_set_pipe(output, data.pipe1);
- igt_output_override_mode(output, &mode);
- } else if (second_output == NULL) {
- second_output = output;
- igt_output_set_pipe(output, data.pipe2);
-
- break;
- }
- }
-
- igt_dynamic_f("pipe-%s-%s-pipe-%s-%s",
- kmstest_pipe_name(data.pipe1),
- igt_output_name(first_output),
- kmstest_pipe_name(data.pipe2),
- igt_output_name(second_output))
- test_invalid_modeset(&data);
- }
- }
- }
+ if (data.big_joiner_output_count > 1)
+ igt_dynamic_f("invalid_combinations_with_two_bigjoiner")
+ test_invalid_modeset_two_joiner(&data, false);
- igt_describe("Verify simultaneous modeset on 2 big joiner outputs");
- igt_subtest_with_dynamic("2x-modeset") {
- igt_require_f(count > 1, "2 outputs with big joiner modes are required\n");
- igt_require_f(data.n_pipes > 3, "Minumum of 4 pipes are required\n");
- for (i = 0; (i + 2) < data.n_pipes - 1; i++) {
- data.pipe1 = pipe_seq[i];
- data.pipe2 = pipe_seq[i + 2];
- igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe_seq[i]), kmstest_pipe_name(pipe_seq[i + 2]))
- test_dual_display(&data);
+ if (data.combined_output_count) {
+ igt_dynamic_f("invalid_combinations_with_bigjoiner_non_bigjoiner")
+ test_invalid_modeset_two_joiner(&data, true);
}
}
igt_fixture {
- igt_remove_fb(data.drm_fd, &data.fb);
igt_display_fini(&data.display);
drm_close_driver(data.drm_fd);
}
-}
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev4)
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 2/2] tests/intel/kms_big_joiner: revamp kms_big_joiner Kunal Joshi
@ 2024-03-05 18:51 ` Patchwork
2024-03-05 18:55 ` ✗ GitLab.Pipeline: warning " Patchwork
` (2 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2024-03-05 18:51 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
== Series Details ==
Series: revamp big joiner test (rev4)
URL : https://patchwork.freedesktop.org/series/130572/
State : failure
== Summary ==
IGT patchset build failed on latest successful build
3485bebabc1f0b8779c95d5525c72e6c672f2917 lib/xe/xe_query: Add helper to check if given gt id points to media gt
Tail of build.log:
[579/1667] Compiling C object 'tests/59830eb@@xe_compute@exe/intel_xe_compute.c.o'.
[580/1667] Compiling C object 'tests/59830eb@@gem_reset_stats@exe/intel_gem_reset_stats.c.o'.
[581/1667] Compiling C object 'tests/59830eb@@kms_psr_stress_test@exe/intel_kms_psr_stress_test.c.o'.
[582/1667] Compiling C object 'tests/59830eb@@kms_psr2_su@exe/intel_kms_psr2_su.c.o'.
[583/1667] Compiling C object 'tests/59830eb@@kms_pm_backlight@exe/intel_kms_pm_backlight.c.o'.
[584/1667] Compiling C object 'tests/59830eb@@kms_busy@exe/intel_kms_busy.c.o'.
[585/1667] Compiling C object 'tests/59830eb@@xe_copy_basic@exe/intel_xe_copy_basic.c.o'.
[586/1667] Compiling C object 'tests/59830eb@@xe_dma_buf_sync@exe/intel_xe_dma_buf_sync.c.o'.
[587/1667] Compiling C object 'tests/59830eb@@gem_mmap_gtt@exe/intel_gem_mmap_gtt.c.o'.
[588/1667] Compiling C object 'tests/59830eb@@gem_pxp@exe/intel_gem_pxp.c.o'.
[589/1667] Compiling C object 'tests/59830eb@@xe_debugfs@exe/intel_xe_debugfs.c.o'.
[590/1667] Compiling C object 'tests/59830eb@@xe_exec_atomic@exe/intel_xe_exec_atomic.c.o'.
[591/1667] Compiling C object 'tests/59830eb@@i915_pm_rps@exe/intel_i915_pm_rps.c.o'.
[592/1667] Compiling C object 'tests/59830eb@@xe_drm_fdinfo@exe/intel_xe_drm_fdinfo.c.o'.
[593/1667] Compiling C object 'tests/59830eb@@xe_media_fill@exe/intel_xe_media_fill.c.o'.
[594/1667] Compiling C object 'tests/59830eb@@xe_gpgpu_fill@exe/intel_xe_gpgpu_fill.c.o'.
[595/1667] Compiling C object 'tests/59830eb@@kms_pm_dc@exe/intel_kms_pm_dc.c.o'.
[596/1667] Compiling C object 'tests/59830eb@@xe_huc_copy@exe/intel_xe_huc_copy.c.o'.
[597/1667] Compiling C object 'tests/59830eb@@kms_ccs@exe/intel_kms_ccs.c.o'.
[598/1667] Compiling C object 'tests/59830eb@@xe_create@exe/intel_xe_create.c.o'.
[599/1667] Compiling C object 'tests/59830eb@@xe_exec_fault_mode@exe/intel_xe_exec_fault_mode.c.o'.
[600/1667] Compiling C object 'tests/59830eb@@xe_exec_queue_property@exe/intel_xe_exec_queue_property.c.o'.
[601/1667] Compiling C object 'tests/59830eb@@xe_exec_store@exe/intel_xe_exec_store.c.o'.
[602/1667] Compiling C object 'tests/59830eb@@xe_exec_basic@exe/intel_xe_exec_basic.c.o'.
[603/1667] Compiling C object 'tests/59830eb@@gem_sync@exe/intel_gem_sync.c.o'.
[604/1667] Compiling C object 'tests/59830eb@@i915_pm_rpm@exe/intel_i915_pm_rpm.c.o'.
[605/1667] Compiling C object 'tests/59830eb@@xe_ccs@exe/intel_xe_ccs.c.o'.
[606/1667] Compiling C object 'tests/59830eb@@xe_exercise_blt@exe/intel_xe_exercise_blt.c.o'.
[607/1667] Compiling C object 'tests/59830eb@@kms_big_fb@exe/intel_kms_big_fb.c.o'.
[608/1667] Compiling C object 'tests/59830eb@@gem_softpin@exe/intel_gem_softpin.c.o'.
[609/1667] Compiling C object 'tests/59830eb@@kms_psr@exe/intel_kms_psr.c.o'.
[610/1667] Compiling C object 'tests/59830eb@@xe_evict_ccs@exe/intel_xe_evict_ccs.c.o'.
[611/1667] Compiling C object 'tests/59830eb@@xe_exec_compute_mode@exe/intel_xe_exec_compute_mode.c.o'.
[612/1667] Compiling C object 'tests/59830eb@@xe_gt_freq@exe/intel_xe_gt_freq.c.o'.
[613/1667] Compiling C object 'tests/59830eb@@xe_exec_balancer@exe/intel_xe_exec_balancer.c.o'.
[614/1667] Compiling C object 'tests/59830eb@@i915_query@exe/intel_i915_query.c.o'.
[615/1667] Compiling C object 'tests/59830eb@@xe_exec_reset@exe/intel_xe_exec_reset.c.o'.
[616/1667] Compiling C object 'tests/59830eb@@gem_exec_balancer@exe/intel_gem_exec_balancer.c.o'.
[617/1667] Compiling C object 'tests/59830eb@@xe_evict@exe/intel_xe_evict.c.o'.
[618/1667] Compiling C object 'tests/59830eb@@kms_pm_rpm@exe/intel_kms_pm_rpm.c.o'.
[619/1667] Generating i915-perf-equations with a custom command.
[620/1667] Compiling C object 'tests/59830eb@@xe_intel_bb@exe/intel_xe_intel_bb.c.o'.
[621/1667] Compiling C object 'tests/59830eb@@kms_psr2_sf@exe/intel_kms_psr2_sf.c.o'.
[622/1667] Compiling C object 'tests/59830eb@@xe_exec_threads@exe/intel_xe_exec_threads.c.o'.
[623/1667] Compiling C object 'tests/59830eb@@gem_exec_fence@exe/intel_gem_exec_fence.c.o'.
[624/1667] Compiling C object 'tests/59830eb@@kms_frontbuffer_tracking@exe/intel_kms_frontbuffer_tracking.c.o'.
[625/1667] Compiling C object 'tests/59830eb@@perf_pmu@exe/intel_perf_pmu.c.o'.
[626/1667] Compiling C object 'tests/59830eb@@perf@exe/intel_perf.c.o'.
[627/1667] Compiling C object 'tests/59830eb@@gem_exec_schedule@exe/intel_gem_exec_schedule.c.o'.
ninja: build stopped: subcommand failed.
^ permalink raw reply [flat|nested] 12+ messages in thread
* ✗ GitLab.Pipeline: warning for revamp big joiner test (rev4)
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
` (2 preceding siblings ...)
2024-03-05 18:51 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev4) Patchwork
@ 2024-03-05 18:55 ` Patchwork
2024-03-06 4:26 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev5) Patchwork
2024-03-06 4:28 ` ✗ GitLab.Pipeline: warning " Patchwork
5 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2024-03-05 18:55 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
== Series Details ==
Series: revamp big joiner test (rev4)
URL : https://patchwork.freedesktop.org/series/130572/
State : warning
== Summary ==
Pipeline status: FAILED.
see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1120239 for the overview.
build:tests-debian-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893490):
[1182/1787] Linking target tests/sysfs_timeslice_duration.
[1183/1787] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1122] Generating version.h with a custom command.
[2/606] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[3/606] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/x86_64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -I/usr/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709664818:step_script
section_start:1709664818:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664819:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-arm64 has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893493):
[2/475] Linking target lib/libi915_perf.so.1.5.
[3/475] Generating symbol file 'lib/76b5a35@@i915_perf@sha/libi915_perf.so.1.5.symbols'.
[4/475] Linking target tests/core_hotunplug.
[5/475] Linking target tests/gem_barrier_race.
[6/475] Linking target tests/perf.
[7/475] Linking target tests/sysfs_timeslice_duration.
[8/475] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
/usr/bin/aarch64-linux-gnu-gcc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/aarch64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709664853:step_script
section_start:1709664853:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664854:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-armhf has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893492):
from ../tests/intel/kms_big_joiner.c:37:
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:283:13: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
igt_info("Number of combinations for %d outputs and %d pipes are %ld\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
i+1, data.n_pipes, num_combinations);
~~~~~~~~~~~~~~~~
../lib/igt_core.h:1247:62: note: in definition of macro ‘igt_info’
#define igt_info(f...) igt_log(IGT_LOG_DOMAIN, IGT_LOG_INFO, f)
^
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709664836:step_script
section_start:1709664836:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664837:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-mips has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893494):
from ../tests/intel/kms_big_joiner.c:37:
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:283:13: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
igt_info("Number of combinations for %d outputs and %d pipes are %ld\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
i+1, data.n_pipes, num_combinations);
~~~~~~~~~~~~~~~~
../lib/igt_core.h:1247:62: note: in definition of macro ‘igt_info’
#define igt_info(f...) igt_log(IGT_LOG_DOMAIN, IGT_LOG_INFO, f)
^
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709664870:step_script
section_start:1709664870:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664871:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893485):
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1123] Generating version.h with a custom command.
[2/605] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[3/605] Linking target tests/sysfs_timeslice_duration.
[4/605] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[5/605] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709664822:step_script
section_start:1709664822:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664823:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-clang has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893489):
[1/1122] Generating version.h with a custom command.
[2/605] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[3/605] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[4/605] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
clang -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c:315:3: error: expected '}'
}
^
../tests/intel/kms_big_joiner.c:227:1: note: to match this '{'
{
^
1 error generated.
ninja: build stopped: subcommand failed.
section_end:1709664839:step_script
section_start:1709664839:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664840:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libdrm-nouveau has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893488):
[1145/1627] Compiling C object 'tests/59830eb@@kms_busy@exe/intel_kms_busy.c.o'.
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/995] Generating version.h with a custom command.
[2/484] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[3/484] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[4/484] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709664837:step_script
section_start:1709664837:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664838:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libunwind has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893486):
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1124] Generating version.h with a custom command.
[2/608] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[3/608] Linking target tests/sysfs_timeslice_duration.
[4/608] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[5/608] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I../lib/stubs/libunwind -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709664839:step_script
section_start:1709664839:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664840:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55893487):
ninja: Entering directory `build'
[1/1123] Generating version.h with a custom command.
[2/608] Generating sysfs_heartbeat_interval.testlist with a meson_exe.py custom command.
[3/608] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[4/608] Linking target tests/sysfs_timeslice_duration.
[5/608] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[6/608] Compiling C object 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/tests@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709664833:step_script
section_start:1709664833:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709664836:cleanup_file_variables
ERROR: Job failed: exit code 1
== Logs ==
For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1120239
^ permalink raw reply [flat|nested] 12+ messages in thread
* ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev5)
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
` (3 preceding siblings ...)
2024-03-05 18:55 ` ✗ GitLab.Pipeline: warning " Patchwork
@ 2024-03-06 4:26 ` Patchwork
2024-03-06 4:28 ` ✗ GitLab.Pipeline: warning " Patchwork
5 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2024-03-06 4:26 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
== Series Details ==
Series: revamp big joiner test (rev5)
URL : https://patchwork.freedesktop.org/series/130572/
State : failure
== Summary ==
IGT patchset build failed on latest successful build
3485bebabc1f0b8779c95d5525c72e6c672f2917 lib/xe/xe_query: Add helper to check if given gt id points to media gt
Tail of build.log:
[563/1667] Compiling C object 'tests/59830eb@@kms_pipe_b_c_ivb@exe/intel_kms_pipe_b_c_ivb.c.o'.
[564/1667] Compiling C object 'tests/59830eb@@kms_fbcon_fbt@exe/intel_kms_fbcon_fbt.c.o'.
[565/1667] Compiling C object 'tests/59830eb@@kms_cdclk@exe/intel_kms_cdclk.c.o'.
[566/1667] Compiling C object 'tests/59830eb@@i915_pipe_stress@exe/intel_i915_pipe_stress.c.o'.
[567/1667] Compiling C object 'tests/59830eb@@kms_psr2_sf@exe/intel_kms_dsc_helper.c.o'.
[568/1667] Compiling C object 'tests/59830eb@@kms_pm_lpsp@exe/intel_kms_pm_lpsp.c.o'.
[569/1667] Compiling C object 'tests/59830eb@@kms_pwrite_crc@exe/intel_kms_pwrite_crc.c.o'.
[570/1667] Compiling C object 'tests/59830eb@@xe_dma_buf_sync@exe/intel_xe_dma_buf_sync.c.o'.
[571/1667] Compiling C object 'tests/59830eb@@kms_psr2_su@exe/intel_kms_psr2_su.c.o'.
[572/1667] Compiling C object 'tests/59830eb@@xe_compute_preempt@exe/intel_xe_compute_preempt.c.o'.
[573/1667] Compiling C object 'lib/76b5a35@@igt-igt_fb_c@sta/igt_fb.c.o'.
[574/1667] Compiling C object 'tests/59830eb@@i915_pm_rc6_residency@exe/intel_i915_pm_rc6_residency.c.o'.
[575/1667] Compiling C object 'tests/59830eb@@xe_copy_basic@exe/intel_xe_copy_basic.c.o'.
[576/1667] Compiling C object 'tests/59830eb@@xe_compute@exe/intel_xe_compute.c.o'.
[577/1667] Compiling C object 'tests/59830eb@@sysfs_timeslice_duration@exe/intel_sysfs_timeslice_duration.c.o'.
[578/1667] Compiling C object 'tests/59830eb@@xe_debugfs@exe/intel_xe_debugfs.c.o'.
[579/1667] Compiling C object 'tests/59830eb@@kms_psr_stress_test@exe/intel_kms_psr_stress_test.c.o'.
[580/1667] Compiling C object 'tests/59830eb@@kms_pm_backlight@exe/intel_kms_pm_backlight.c.o'.
[581/1667] Compiling C object 'lib/76b5a35@@igt-igt_kms_c@sta/igt_kms.c.o'.
[582/1667] Compiling C object 'tests/59830eb@@prime_mmap@exe/intel_prime_mmap.c.o'.
[583/1667] Compiling C object 'tests/59830eb@@gem_mmap_gtt@exe/intel_gem_mmap_gtt.c.o'.
[584/1667] Compiling C object 'tests/59830eb@@i915_pm_rps@exe/intel_i915_pm_rps.c.o'.
[585/1667] Compiling C object 'tests/59830eb@@kms_busy@exe/intel_kms_busy.c.o'.
[586/1667] Compiling C object 'tests/59830eb@@gem_pxp@exe/intel_gem_pxp.c.o'.
[587/1667] Compiling C object 'tests/59830eb@@gem_reset_stats@exe/intel_gem_reset_stats.c.o'.
[588/1667] Compiling C object 'tests/59830eb@@xe_exec_atomic@exe/intel_xe_exec_atomic.c.o'.
[589/1667] Compiling C object 'tests/59830eb@@kms_pm_dc@exe/intel_kms_pm_dc.c.o'.
[590/1667] Compiling C object 'tests/59830eb@@xe_drm_fdinfo@exe/intel_xe_drm_fdinfo.c.o'.
[591/1667] Compiling C object 'tests/59830eb@@xe_create@exe/intel_xe_create.c.o'.
[592/1667] Compiling C object 'tests/59830eb@@kms_ccs@exe/intel_kms_ccs.c.o'.
[593/1667] Compiling C object 'tests/59830eb@@kms_big_fb@exe/intel_kms_big_fb.c.o'.
[594/1667] Compiling C object 'tests/59830eb@@kms_psr@exe/intel_kms_psr.c.o'.
[595/1667] Compiling C object 'tests/59830eb@@gem_sync@exe/intel_gem_sync.c.o'.
[596/1667] Compiling C object 'tests/59830eb@@xe_evict_ccs@exe/intel_xe_evict_ccs.c.o'.
[597/1667] Compiling C object 'tests/59830eb@@i915_pm_rpm@exe/intel_i915_pm_rpm.c.o'.
[598/1667] Compiling C object 'tests/59830eb@@xe_ccs@exe/intel_xe_ccs.c.o'.
[599/1667] Compiling C object 'tests/59830eb@@xe_exec_balancer@exe/intel_xe_exec_balancer.c.o'.
[600/1667] Compiling C object 'tests/59830eb@@gem_softpin@exe/intel_gem_softpin.c.o'.
[601/1667] Compiling C object 'tests/59830eb@@xe_evict@exe/intel_xe_evict.c.o'.
[602/1667] Compiling C object 'tests/59830eb@@i915_query@exe/intel_i915_query.c.o'.
[603/1667] Compiling C object 'tests/59830eb@@kms_psr2_sf@exe/intel_kms_psr2_sf.c.o'.
[604/1667] Compiling C object 'tests/59830eb@@gem_exec_balancer@exe/intel_gem_exec_balancer.c.o'.
[605/1667] Compiling C object 'tests/59830eb@@kms_pm_rpm@exe/intel_kms_pm_rpm.c.o'.
[606/1667] Generating i915-perf-equations with a custom command.
[607/1667] Compiling C object 'tests/59830eb@@gem_exec_fence@exe/intel_gem_exec_fence.c.o'.
[608/1667] Compiling C object 'tests/59830eb@@kms_frontbuffer_tracking@exe/intel_kms_frontbuffer_tracking.c.o'.
[609/1667] Compiling C object 'tests/59830eb@@perf_pmu@exe/intel_perf_pmu.c.o'.
[610/1667] Compiling C object 'tests/59830eb@@gem_exec_schedule@exe/intel_gem_exec_schedule.c.o'.
[611/1667] Compiling C object 'tests/59830eb@@perf@exe/intel_perf.c.o'.
ninja: build stopped: subcommand failed.
^ permalink raw reply [flat|nested] 12+ messages in thread
* ✗ GitLab.Pipeline: warning for revamp big joiner test (rev5)
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
` (4 preceding siblings ...)
2024-03-06 4:26 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev5) Patchwork
@ 2024-03-06 4:28 ` Patchwork
5 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2024-03-06 4:28 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
== Series Details ==
Series: revamp big joiner test (rev5)
URL : https://patchwork.freedesktop.org/series/130572/
State : warning
== Summary ==
Pipeline status: FAILED.
see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1120614 for the overview.
build:tests-debian-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917955):
[1182/1787] Generating sysfs_defaults.testlist with a meson_exe.py custom command.
[1183/1787] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1122] Generating version.h with a custom command.
[2/606] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[3/606] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/x86_64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -I/usr/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709699125:step_script
section_start:1709699125:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699126:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-arm64 has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917958):
[2/474] Linking target lib/libi915_perf.so.1.5.
[3/474] Generating symbol file 'lib/76b5a35@@i915_perf@sha/libi915_perf.so.1.5.symbols'.
[4/474] Linking target tests/core_hotunplug.
[5/474] Linking target tests/gem_barrier_race.
[6/474] Linking target tests/perf.
[7/474] Linking target tests/sysfs_timeslice_duration.
[8/474] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
/usr/bin/aarch64-linux-gnu-gcc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/aarch64-linux-gnu -I/usr/include/valgrind -I/usr/include/alsa -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709699138:step_script
section_start:1709699138:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699139:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-armhf has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917957):
from ../tests/intel/kms_big_joiner.c:37:
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:283:13: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
igt_info("Number of combinations for %d outputs and %d pipes are %ld\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
i+1, data.n_pipes, num_combinations);
~~~~~~~~~~~~~~~~
../lib/igt_core.h:1247:62: note: in definition of macro ‘igt_info’
#define igt_info(f...) igt_log(IGT_LOG_DOMAIN, IGT_LOG_INFO, f)
^
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709699133:step_script
section_start:1709699133:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699134:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-mips has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917959):
from ../tests/intel/kms_big_joiner.c:37:
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:283:13: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
igt_info("Number of combinations for %d outputs and %d pipes are %ld\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
i+1, data.n_pipes, num_combinations);
~~~~~~~~~~~~~~~~
../lib/igt_core.h:1247:62: note: in definition of macro ‘igt_info’
#define igt_info(f...) igt_log(IGT_LOG_DOMAIN, IGT_LOG_INFO, f)
^
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
}
^
ninja: build stopped: subcommand failed.
section_end:1709699140:step_script
section_start:1709699140:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699140:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917950):
[1192/1793] Compiling C object 'tests/59830eb@@kms_ccs@exe/intel_kms_ccs.c.o'.
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1122] Generating version.h with a custom command.
[2/603] Linking target tests/sysfs_timeslice_duration.
[3/603] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[4/603] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709699131:step_script
section_start:1709699131:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699132:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-clang has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917954):
[8/613] Generating perf.testlist with a meson_exe.py custom command.
[9/613] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[10/613] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[11/613] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
clang -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c:315:3: error: expected '}'
}
^
../tests/intel/kms_big_joiner.c:227:1: note: to match this '{'
{
^
1 error generated.
ninja: build stopped: subcommand failed.
section_end:1709699155:step_script
section_start:1709699155:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699156:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libdrm-nouveau has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917953):
ninja: Entering directory `build'
[1/996] Generating version.h with a custom command.
[2/487] Generating sysfs_heartbeat_interval.testlist with a meson_exe.py custom command.
[3/487] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[4/487] Linking target tests/sysfs_timeslice_duration.
[5/487] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[6/487] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709699130:step_script
section_start:1709699130:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699131:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libunwind has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917951):
ninja: build stopped: subcommand failed.
ninja: Entering directory `build'
[1/1123] Generating version.h with a custom command.
[2/607] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[3/607] Linking target tests/sysfs_timeslice_duration.
[4/607] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[5/607] Compiling C object 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/59830eb@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I../lib/stubs/libunwind -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/59830eb@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709699139:step_script
section_start:1709699139:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699140:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/55917952):
[1/1123] Generating version.h with a custom command.
[2/609] Generating sysfs_heartbeat_interval.testlist with a meson_exe.py custom command.
[3/609] Linking target tests/sysfs_preempt_timeout.
[4/609] Generating sysfs_preempt_timeout.testlist with a meson_exe.py custom command.
[5/609] Linking target tests/sysfs_timeslice_duration.
[6/609] Generating sysfs_timeslice_duration.testlist with a meson_exe.py custom command.
[7/609] Compiling C object 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o'.
FAILED: tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o
cc -Itests/tests@@kms_big_joiner@exe -Itests -I../tests -I../include -I../include/drm-uapi -I../include/linux-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libdrm/nouveau -I/usr/include/valgrind -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -pthread -MD -MQ 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -MF 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o.d' -o 'tests/tests@@kms_big_joiner@exe/intel_kms_big_joiner.c.o' -c ../tests/intel/kms_big_joiner.c
../tests/intel/kms_big_joiner.c: In function ‘__igt_unique____real_main226’:
../tests/intel/kms_big_joiner.c:315:2: error: expected declaration or statement at end of input
315 | }
| ^
ninja: build stopped: subcommand failed.
section_end:1709699137:step_script
section_start:1709699137:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1709699138:cleanup_file_variables
ERROR: Job failed: exit code 1
== Logs ==
For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1120614
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib
2024-03-06 5:25 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
@ 2024-03-06 5:25 ` Kunal Joshi
0 siblings, 0 replies; 12+ messages in thread
From: Kunal Joshi @ 2024-03-06 5:25 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Karthik B S, Bhanuprakash Modem
move bigjoiner_mode_found to lib
Cc: Karthik B S <karthik.b.s@intel.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_kms.c | 25 +++++++++++++++++++++++++
lib/igt_kms.h | 2 ++
tests/intel/kms_big_joiner.c | 14 +-------------
3 files changed, 28 insertions(+), 13 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index e18f6fe59..63c8045c7 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -6143,6 +6143,31 @@ bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock)
mode->clock > max_dotclock);
}
+/**
+ * bigjoiner_mode_found:
+ * @connector: libdrm connector
+ * @sort_method: comparator method
+ * @mode: libdrm mode
+ *
+ * Bigjoiner will come in to the picture when the
+ * resolution > 5K or clock > max-dot-clock.
+ *
+ * Returns: True if big joiner found in connector modes
+ */
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock)
+{
+ bool found = false;
+
+ igt_sort_connector_modes(connector, sort_drm_modes_by_res_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ if (!found) {
+ igt_sort_connector_modes(connector, sort_drm_modes_by_clk_dsc);
+ found = igt_bigjoiner_possible(&connector->modes[0], max_dotclock);
+ }
+ return found;
+}
+
/**
* igt_check_bigjoiner_support:
* @display: a pointer to an #igt_display_t structure
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b3882808b..bab8487d3 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -1212,6 +1212,8 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
igt_output_t *output, int bpc);
int igt_get_max_dotclock(int fd);
bool igt_bigjoiner_possible(drmModeModeInfo *mode, int max_dotclock);
+bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
+ int max_dotclock);
bool igt_check_bigjoiner_support(igt_display_t *display);
bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
bool intel_pipe_output_combo_valid(igt_display_t *display);
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index aba2adfbe..28678b958 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -199,16 +199,6 @@ static void test_dual_display(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-static bool bigjoiner_mode_found(drmModeConnector *connector,
- int (*sort_method)(const void *, const void*),
- drmModeModeInfo *mode)
-{
- igt_sort_connector_modes(connector, sort_method);
- *mode = connector->modes[0];
-
- return igt_bigjoiner_possible(mode, max_dotclock);
-}
-
igt_main
{
data_t data;
@@ -235,9 +225,7 @@ igt_main
* Bigjoiner will come in to the picture when the
* resolution > 5K or clock > max-dot-clock.
*/
- found = (bigjoiner_mode_found(connector, sort_drm_modes_by_res_dsc, &mode) ||
- bigjoiner_mode_found(connector, sort_drm_modes_by_clk_dsc, &mode)) ?
- true : false;
+ found = bigjoiner_mode_found(data.drm_fd, connector, max_dotclock);
if (found) {
data.output[count].output_id = output->id;
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2024-03-06 5:14 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-05 16:36 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-03-05 16:36 ` [PATCH i-g-t 2/2] tests/intel/kms_big_joiner: revamp kms_big_joiner Kunal Joshi
2024-03-05 18:51 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev4) Patchwork
2024-03-05 18:55 ` ✗ GitLab.Pipeline: warning " Patchwork
2024-03-06 4:26 ` ✗ Fi.CI.BUILD: failure for revamp big joiner test (rev5) Patchwork
2024-03-06 4:28 ` ✗ GitLab.Pipeline: warning " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2024-03-06 5:25 [PATCH i-g-t 0/2] revamp big joiner test Kunal Joshi
2024-03-06 5:25 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-01-18 10:46 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
2024-01-18 10:46 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-01-15 10:58 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
2024-01-15 10:58 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-01-12 8:55 [PATCH i-g-t 0/2] add support for choosing big joiner mode Kunal Joshi
2024-01-12 8:55 ` [PATCH i-g-t 1/2] lib/igt_kms: move bigjoiner_mode_found to lib Kunal Joshi
2024-01-18 9:28 ` Modem, Bhanuprakash
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox