* [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe.
@ 2018-03-14 11:20 Maarten Lankhorst
2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe Maarten Lankhorst
` (11 more replies)
0 siblings, 12 replies; 20+ messages in thread
From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw)
To: igt-dev
Some tests don't have to be called on all outputs, because they only manipulate the pipe.
For these tests we create 2 helper functions, so we reduce the amount of modesets required.
for_each_pipe_with_single_output is a drop in replacement for for_each_pipe_with_valid_output,
and only iterates 1 output per pipe.
igt_get_single_output_for_pipe returns a valid output for a given pipe, if it can be found.
It can be used in place of a for_each_valid_output_on_pipe loop.
This is just a sample conversion, other tests can be changed when this is accepted..
Maarten Lankhorst (5):
lib/igt_kms: Add functions to get only a single output for a pipe.
tests/kms_rmfb: Use for_each_pipe_with_single_output.
tests/kms_busy: Convert to using igt_get_single_output_for_pipe.
tests/kms_chv_cursor_fail: Reorder tests, and use
igt_display_require_output_on_pipe.
tests/kms_chv_cursor_fail: Handle cleanup better.
lib/igt_kms.c | 93 +++++++++++++++++++++++++++++++++++++++++++++
lib/igt_kms.h | 26 +++++++++++++
tests/kms_busy.c | 38 ++++++++----------
tests/kms_chv_cursor_fail.c | 90 +++++++++++++++++--------------------------
tests/kms_rmfb.c | 8 +---
5 files changed, 171 insertions(+), 84 deletions(-)
--
2.16.2
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread* [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst @ 2018-03-14 11:20 ` Maarten Lankhorst 2018-03-14 14:43 ` Ville Syrjälä 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output Maarten Lankhorst ` (10 subsequent siblings) 11 siblings, 1 reply; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw) To: igt-dev igt_get_single_output_for_pipe() will give a valid output for a pipe, for_each_pipe_with_single_output will iterate over all pipes, and will be called for each pipe with an output once. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- lib/igt_kms.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ lib/igt_kms.h | 26 +++++++++++++++++ 2 files changed, 119 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 6bac4d1fae50..1313ef12ebc5 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -2195,6 +2195,99 @@ igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type) return &pipe->planes[plane_idx]; } +static bool output_is_internal_panel(igt_output_t *output) +{ + switch (output->config.connector->connector_type) { + case DRM_MODE_CONNECTOR_LVDS: + case DRM_MODE_CONNECTOR_eDP: + case DRM_MODE_CONNECTOR_DSI: + case DRM_MODE_CONNECTOR_DPI: + return true; + default: + return false; + } +} + +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, igt_output_t **chosen_outputs) +{ + unsigned full_pipe_mask = (1 << (display->n_pipes)) - 1, assigned_pipes = 0; + igt_output_t *output; + int i, j; + + memset(chosen_outputs, 0, sizeof(*chosen_outputs) * display->n_pipes); + + /* + * Try to assign all outputs to the first available CRTC for + * it, start with the outputs restricted to 1 pipe, then increase + * number of pipes until we assign connectors to all pipes. + */ + for (i = 0; i <= display->n_pipes; i++) { + for_each_connected_output(display, output) { + uint32_t pipe_mask = output->config.valid_crtc_idx_mask & full_pipe_mask; + bool found = false; + + if (output_is_internal_panel(output)) { + /* + * Internal panel should be assigned to pipe A + * if possible, so make sure they're enumerated + * first. + */ + + if (i) + continue; + } else if (__builtin_popcount(pipe_mask) != i) + continue; + + for (j = 0; j < display->n_pipes; j++) { + bool pipe_assigned = assigned_pipes & (1 << j); + + if (pipe_assigned || !(pipe_mask & (1 << j))) + continue; + + if (!found) { + /* We found an unassigned pipe, use it! */ + found = true; + assigned_pipes |= 1 << j; + chosen_outputs[j] = output; + } else if (!chosen_outputs[j] || + /* + * Overwrite internal panel if not assigned, + * external outputs are faster to do modesets + */ + output_is_internal_panel(chosen_outputs[j])) + chosen_outputs[j] = output; + } + + if (!found) + igt_warn("Output %s could not be assigned to a pipe\n", + igt_output_name(output)); + } + } + + return chosen_outputs; +} + +/** + * igt_get_single_output_for_pipe: + * @display: a pointer to an #igt_display_t structure + * @pipe: The pipe for which an #igt_output_t must be returned. + * + * Get a compatible output for a pipe. + * + * Returns: A compatible output for a given pipe, or NULL. + */ +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe) +{ + igt_output_t *chosen_outputs[display->n_pipes]; + + igt_assert(pipe != PIPE_NONE); + igt_require(pipe < display->n_pipes); + + __igt_pipe_populate_outputs(display, chosen_outputs); + + return chosen_outputs[pipe]; +} + static igt_output_t *igt_pipe_get_output(igt_pipe_t *pipe) { igt_display_t *display = pipe->display; diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 1c46186e8a9d..178b636c143e 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -380,7 +380,9 @@ igt_plane_t *igt_output_get_plane(igt_output_t *output, int plane_idx); igt_plane_t *igt_output_get_plane_type(igt_output_t *output, int plane_type); igt_output_t *igt_output_from_connector(igt_display_t *display, drmModeConnector *connector); + igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type); +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe); void igt_pipe_request_out_fence(igt_pipe_t *pipe); @@ -468,6 +470,10 @@ static inline bool igt_output_is_connected(igt_output_t *output) * * This for loop is called over all connected outputs. This function * will try every combination of @pipe and @output. + * + * If you only need to test a single output for each pipe, use + * for_each_pipe_with_single_output(), if you only need an + * output for a single pipe, use igt_get_single_output_for_pipe(). */ #define for_each_pipe_with_valid_output(display, pipe, output) \ for (int con__ = (pipe) = 0; \ @@ -476,6 +482,26 @@ static inline bool igt_output_is_connected(igt_output_t *output) for_each_if ((((output) = &(display)->outputs[con__]), \ igt_pipe_connector_valid((pipe), (output)))) +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, + igt_output_t **chosen_outputs); + +/** + * for_each_pipe_with_single_output: + * @display: a pointer to an #igt_display_t structure + * @pipe: The pipe for which this @pipe / @output combination is valid. + * @output: The output for which this @pipe / @output combination is valid. + * + * This loop is called over all pipes, and will try to find a compatible output + * for each pipe. Unlike for_each_pipe_with_valid_output(), this function will + * be called at most once for each pipe. + */ +#define for_each_pipe_with_single_output(display, pipe, output) \ + for (igt_output_t *__outputs[(display)->n_pipes], \ + **__output = __igt_pipe_populate_outputs((display), __outputs); \ + __output < &__outputs[(display)->n_pipes]; __output++) \ + for_each_if (*__output && \ + ((pipe) = (__outputs - __output), (output) = *__output, 1)) + /** * for_each_valid_output_on_pipe: * @display: a pointer to an #igt_display_t structure -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe. 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe Maarten Lankhorst @ 2018-03-14 14:43 ` Ville Syrjälä 2018-03-15 16:58 ` [igt-dev] [PATCH i-g-t] lib/igt_kms: Add functions to get only a single output for a pipe, v2 Maarten Lankhorst 0 siblings, 1 reply; 20+ messages in thread From: Ville Syrjälä @ 2018-03-14 14:43 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev On Wed, Mar 14, 2018 at 12:20:17PM +0100, Maarten Lankhorst wrote: > igt_get_single_output_for_pipe() will give a valid output for a pipe, > for_each_pipe_with_single_output will iterate over all pipes, and > will be called for each pipe with an output once. > > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > --- > lib/igt_kms.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > lib/igt_kms.h | 26 +++++++++++++++++ > 2 files changed, 119 insertions(+) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 6bac4d1fae50..1313ef12ebc5 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -2195,6 +2195,99 @@ igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type) > return &pipe->planes[plane_idx]; > } > > +static bool output_is_internal_panel(igt_output_t *output) > +{ > + switch (output->config.connector->connector_type) { > + case DRM_MODE_CONNECTOR_LVDS: > + case DRM_MODE_CONNECTOR_eDP: > + case DRM_MODE_CONNECTOR_DSI: > + case DRM_MODE_CONNECTOR_DPI: > + return true; > + default: > + return false; > + } > +} > + > +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, igt_output_t **chosen_outputs) > +{ > + unsigned full_pipe_mask = (1 << (display->n_pipes)) - 1, assigned_pipes = 0; > + igt_output_t *output; > + int i, j; > + > + memset(chosen_outputs, 0, sizeof(*chosen_outputs) * display->n_pipes); > + > + /* > + * Try to assign all outputs to the first available CRTC for > + * it, start with the outputs restricted to 1 pipe, then increase > + * number of pipes until we assign connectors to all pipes. > + */ > + for (i = 0; i <= display->n_pipes; i++) { > + for_each_connected_output(display, output) { > + uint32_t pipe_mask = output->config.valid_crtc_idx_mask & full_pipe_mask; > + bool found = false; > + > + if (output_is_internal_panel(output)) { > + /* > + * Internal panel should be assigned to pipe A > + * if possible, so make sure they're enumerated > + * first. > + */ > + > + if (i) > + continue; > + } else if (__builtin_popcount(pipe_mask) != i) > + continue; > + > + for (j = 0; j < display->n_pipes; j++) { > + bool pipe_assigned = assigned_pipes & (1 << j); > + > + if (pipe_assigned || !(pipe_mask & (1 << j))) > + continue; > + > + if (!found) { > + /* We found an unassigned pipe, use it! */ > + found = true; > + assigned_pipes |= 1 << j; > + chosen_outputs[j] = output; > + } else if (!chosen_outputs[j] || > + /* > + * Overwrite internal panel if not assigned, > + * external outputs are faster to do modesets > + */ > + output_is_internal_panel(chosen_outputs[j])) > + chosen_outputs[j] = output; > + } I think this might not be find the optimal solution in some cases since it always picks the first available pipe. So in theory we might not pick as many outputs that are actually available. But I suppose such configurations shouldn't be commoin so probably will do fine for most cases. > + > + if (!found) > + igt_warn("Output %s could not be assigned to a pipe\n", > + igt_output_name(output)); > + } > + } > + > + return chosen_outputs; > +} > + > +/** > + * igt_get_single_output_for_pipe: > + * @display: a pointer to an #igt_display_t structure > + * @pipe: The pipe for which an #igt_output_t must be returned. > + * > + * Get a compatible output for a pipe. > + * > + * Returns: A compatible output for a given pipe, or NULL. > + */ > +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe) > +{ > + igt_output_t *chosen_outputs[display->n_pipes]; > + > + igt_assert(pipe != PIPE_NONE); > + igt_require(pipe < display->n_pipes); > + > + __igt_pipe_populate_outputs(display, chosen_outputs); > + > + return chosen_outputs[pipe]; > +} > + > static igt_output_t *igt_pipe_get_output(igt_pipe_t *pipe) > { > igt_display_t *display = pipe->display; > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 1c46186e8a9d..178b636c143e 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -380,7 +380,9 @@ igt_plane_t *igt_output_get_plane(igt_output_t *output, int plane_idx); > igt_plane_t *igt_output_get_plane_type(igt_output_t *output, int plane_type); > igt_output_t *igt_output_from_connector(igt_display_t *display, > drmModeConnector *connector); > + > igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type); > +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe); > > void igt_pipe_request_out_fence(igt_pipe_t *pipe); > > @@ -468,6 +470,10 @@ static inline bool igt_output_is_connected(igt_output_t *output) > * > * This for loop is called over all connected outputs. This function > * will try every combination of @pipe and @output. > + * > + * If you only need to test a single output for each pipe, use > + * for_each_pipe_with_single_output(), if you only need an > + * output for a single pipe, use igt_get_single_output_for_pipe(). > */ > #define for_each_pipe_with_valid_output(display, pipe, output) \ > for (int con__ = (pipe) = 0; \ > @@ -476,6 +482,26 @@ static inline bool igt_output_is_connected(igt_output_t *output) > for_each_if ((((output) = &(display)->outputs[con__]), \ > igt_pipe_connector_valid((pipe), (output)))) > > +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, > + igt_output_t **chosen_outputs); > + > +/** > + * for_each_pipe_with_single_output: > + * @display: a pointer to an #igt_display_t structure > + * @pipe: The pipe for which this @pipe / @output combination is valid. > + * @output: The output for which this @pipe / @output combination is valid. > + * > + * This loop is called over all pipes, and will try to find a compatible output > + * for each pipe. Unlike for_each_pipe_with_valid_output(), this function will > + * be called at most once for each pipe. > + */ > +#define for_each_pipe_with_single_output(display, pipe, output) \ > + for (igt_output_t *__outputs[(display)->n_pipes], \ > + **__output = __igt_pipe_populate_outputs((display), __outputs); \ > + __output < &__outputs[(display)->n_pipes]; __output++) \ > + for_each_if (*__output && \ > + ((pipe) = (__outputs - __output), (output) = *__output, 1)) That requires quite a sophisticated parser :) But it does look correct to me. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > + > /** > * for_each_valid_output_on_pipe: > * @display: a pointer to an #igt_display_t structure > -- > 2.16.2 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- Ville Syrjälä Intel OTC _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t] lib/igt_kms: Add functions to get only a single output for a pipe, v2. 2018-03-14 14:43 ` Ville Syrjälä @ 2018-03-15 16:58 ` Maarten Lankhorst 0 siblings, 0 replies; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-15 16:58 UTC (permalink / raw) To: igt-dev igt_get_single_output_for_pipe() will give a valid output for a pipe, for_each_pipe_with_single_output will iterate over all pipes, and will be called for each pipe with an output once. Changes since v1: - pipe = __outputs - __output returned a negative number for pipe, correctly set it to __output - __outputs. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- The macro was almost correct! Good thing I had kms_rmfb expose the flaw. :) lib/igt_kms.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ lib/igt_kms.h | 26 +++++++++++++++++ 2 files changed, 119 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 6bac4d1fae50..1313ef12ebc5 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -2195,6 +2195,99 @@ igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type) return &pipe->planes[plane_idx]; } +static bool output_is_internal_panel(igt_output_t *output) +{ + switch (output->config.connector->connector_type) { + case DRM_MODE_CONNECTOR_LVDS: + case DRM_MODE_CONNECTOR_eDP: + case DRM_MODE_CONNECTOR_DSI: + case DRM_MODE_CONNECTOR_DPI: + return true; + default: + return false; + } +} + +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, igt_output_t **chosen_outputs) +{ + unsigned full_pipe_mask = (1 << (display->n_pipes)) - 1, assigned_pipes = 0; + igt_output_t *output; + int i, j; + + memset(chosen_outputs, 0, sizeof(*chosen_outputs) * display->n_pipes); + + /* + * Try to assign all outputs to the first available CRTC for + * it, start with the outputs restricted to 1 pipe, then increase + * number of pipes until we assign connectors to all pipes. + */ + for (i = 0; i <= display->n_pipes; i++) { + for_each_connected_output(display, output) { + uint32_t pipe_mask = output->config.valid_crtc_idx_mask & full_pipe_mask; + bool found = false; + + if (output_is_internal_panel(output)) { + /* + * Internal panel should be assigned to pipe A + * if possible, so make sure they're enumerated + * first. + */ + + if (i) + continue; + } else if (__builtin_popcount(pipe_mask) != i) + continue; + + for (j = 0; j < display->n_pipes; j++) { + bool pipe_assigned = assigned_pipes & (1 << j); + + if (pipe_assigned || !(pipe_mask & (1 << j))) + continue; + + if (!found) { + /* We found an unassigned pipe, use it! */ + found = true; + assigned_pipes |= 1 << j; + chosen_outputs[j] = output; + } else if (!chosen_outputs[j] || + /* + * Overwrite internal panel if not assigned, + * external outputs are faster to do modesets + */ + output_is_internal_panel(chosen_outputs[j])) + chosen_outputs[j] = output; + } + + if (!found) + igt_warn("Output %s could not be assigned to a pipe\n", + igt_output_name(output)); + } + } + + return chosen_outputs; +} + +/** + * igt_get_single_output_for_pipe: + * @display: a pointer to an #igt_display_t structure + * @pipe: The pipe for which an #igt_output_t must be returned. + * + * Get a compatible output for a pipe. + * + * Returns: A compatible output for a given pipe, or NULL. + */ +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe) +{ + igt_output_t *chosen_outputs[display->n_pipes]; + + igt_assert(pipe != PIPE_NONE); + igt_require(pipe < display->n_pipes); + + __igt_pipe_populate_outputs(display, chosen_outputs); + + return chosen_outputs[pipe]; +} + static igt_output_t *igt_pipe_get_output(igt_pipe_t *pipe) { igt_display_t *display = pipe->display; diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 672930e9849f..24cb0b7e778b 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -380,7 +380,9 @@ igt_plane_t *igt_output_get_plane(igt_output_t *output, int plane_idx); igt_plane_t *igt_output_get_plane_type(igt_output_t *output, int plane_type); igt_output_t *igt_output_from_connector(igt_display_t *display, drmModeConnector *connector); + igt_plane_t *igt_pipe_get_plane_type(igt_pipe_t *pipe, int plane_type); +igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe pipe); void igt_pipe_request_out_fence(igt_pipe_t *pipe); @@ -468,6 +470,10 @@ static inline bool igt_output_is_connected(igt_output_t *output) * * This for loop is called over all connected outputs. This function * will try every combination of @pipe and @output. + * + * If you only need to test a single output for each pipe, use + * for_each_pipe_with_single_output(), if you only need an + * output for a single pipe, use igt_get_single_output_for_pipe(). */ #define for_each_pipe_with_valid_output(display, pipe, output) \ for (int con__ = (pipe) = 0; \ @@ -476,6 +482,26 @@ static inline bool igt_output_is_connected(igt_output_t *output) for_each_if ((((output) = &(display)->outputs[con__]), \ igt_pipe_connector_valid((pipe), (output)))) +igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, + igt_output_t **chosen_outputs); + +/** + * for_each_pipe_with_single_output: + * @display: a pointer to an #igt_display_t structure + * @pipe: The pipe for which this @pipe / @output combination is valid. + * @output: The output for which this @pipe / @output combination is valid. + * + * This loop is called over all pipes, and will try to find a compatible output + * for each pipe. Unlike for_each_pipe_with_valid_output(), this function will + * be called at most once for each pipe. + */ +#define for_each_pipe_with_single_output(display, pipe, output) \ + for (igt_output_t *__outputs[(display)->n_pipes], \ + **__output = __igt_pipe_populate_outputs((display), __outputs); \ + __output < &__outputs[(display)->n_pipes]; __output++) \ + for_each_if (*__output && \ + ((pipe) = (__output - __outputs), (output) = *__output, 1)) + /** * for_each_valid_output_on_pipe: * @display: a pointer to an #igt_display_t structure -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe Maarten Lankhorst @ 2018-03-14 11:20 ` Maarten Lankhorst 2018-03-14 14:44 ` Ville Syrjälä 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe Maarten Lankhorst ` (9 subsequent siblings) 11 siblings, 1 reply; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw) To: igt-dev A single output on every pipe will do for testing. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- tests/kms_rmfb.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c index c97adceea761..f3461cc919e9 100644 --- a/tests/kms_rmfb.c +++ b/tests/kms_rmfb.c @@ -129,15 +129,10 @@ static void run_rmfb_test(struct rmfb_data *data, bool reopen) { igt_output_t *output; - int valid_tests = 0; enum pipe pipe; - for_each_pipe_with_valid_output(&data->display, pipe, output) { + for_each_pipe_with_single_output(&data->display, pipe, output) test_rmfb(data, output, pipe, reopen); - valid_tests = 1; - } - - igt_require_f(valid_tests, "no valid crtc/connector combinations found\n"); } igt_main @@ -152,6 +147,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_display_init(&data.display, data.drm_fd); + igt_display_require_output(&data.display); } igt_subtest_f("rmfb-ioctl") -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output. 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output Maarten Lankhorst @ 2018-03-14 14:44 ` Ville Syrjälä 0 siblings, 0 replies; 20+ messages in thread From: Ville Syrjälä @ 2018-03-14 14:44 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev On Wed, Mar 14, 2018 at 12:20:18PM +0100, Maarten Lankhorst wrote: > A single output on every pipe will do for testing. > > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > tests/kms_rmfb.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c > index c97adceea761..f3461cc919e9 100644 > --- a/tests/kms_rmfb.c > +++ b/tests/kms_rmfb.c > @@ -129,15 +129,10 @@ static void > run_rmfb_test(struct rmfb_data *data, bool reopen) > { > igt_output_t *output; > - int valid_tests = 0; > enum pipe pipe; > > - for_each_pipe_with_valid_output(&data->display, pipe, output) { > + for_each_pipe_with_single_output(&data->display, pipe, output) > test_rmfb(data, output, pipe, reopen); > - valid_tests = 1; > - } > - > - igt_require_f(valid_tests, "no valid crtc/connector combinations found\n"); > } > > igt_main > @@ -152,6 +147,7 @@ igt_main > kmstest_set_vt_graphics_mode(); > > igt_display_init(&data.display, data.drm_fd); > + igt_display_require_output(&data.display); > } > > igt_subtest_f("rmfb-ioctl") > -- > 2.16.2 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- Ville Syrjälä Intel OTC _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output Maarten Lankhorst @ 2018-03-14 11:20 ` Maarten Lankhorst 2018-03-14 14:46 ` Ville Syrjälä 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_chv_cursor_fail: Reorder tests, and use igt_display_require_output_on_pipe Maarten Lankhorst ` (8 subsequent siblings) 11 siblings, 1 reply; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw) To: igt-dev Put a single igt_display_require_output_on_pipe in the fixture, so we know we always have an output on the pipe and can always assume it's not NULL. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- tests/kms_busy.c | 38 +++++++++++++++----------------------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/tests/kms_busy.c b/tests/kms_busy.c index 0828a8b38a06..5b4959681025 100644 --- a/tests/kms_busy.c +++ b/tests/kms_busy.c @@ -35,31 +35,23 @@ IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers."); static igt_output_t * set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb) { + drmModeModeInfoPtr mode; + igt_plane_t *primary; igt_output_t *output; - for_each_valid_output_on_pipe(dpy, pipe, output) { - drmModeModeInfoPtr mode; - igt_plane_t *primary; - - if (output->pending_pipe != PIPE_NONE) - continue; - - igt_output_set_pipe(output, pipe); - mode = igt_output_get_mode(output); + output = igt_get_single_output_for_pipe(dpy, pipe); - igt_create_pattern_fb(dpy->drm_fd, - mode->hdisplay, mode->vdisplay, - DRM_FORMAT_XRGB8888, - LOCAL_I915_FORMAT_MOD_X_TILED, - fb); + igt_output_set_pipe(output, pipe); + mode = igt_output_get_mode(output); - primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); - igt_plane_set_fb(primary, fb); + igt_create_pattern_fb(dpy->drm_fd, mode->hdisplay, mode->vdisplay, + DRM_FORMAT_XRGB8888, + LOCAL_I915_FORMAT_MOD_X_TILED, fb); - return output; - } + primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); + igt_plane_set_fb(primary, fb); - return NULL; + return output; } static void do_cleanup_display(igt_display_t *dpy) @@ -168,7 +160,7 @@ static void test_flip(igt_display_t *dpy, unsigned ring, int pipe, bool modeset) signal(SIGALRM, sighandler); - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); + output = set_fb_on_crtc(dpy, pipe, &fb[0]); igt_display_commit2(dpy, COMMIT_LEGACY); igt_create_pattern_fb(dpy->drm_fd, @@ -246,7 +238,7 @@ static void test_hang(igt_display_t *dpy, unsigned ring, igt_output_t *output; igt_plane_t *primary; - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); + output = set_fb_on_crtc(dpy, pipe, &fb[0]); igt_display_commit2(dpy, COMMIT_ATOMIC); primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); @@ -290,7 +282,7 @@ static void test_pageflip_modeset_hang(igt_display_t *dpy, igt_plane_t *primary; igt_spin_t *t; - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb))); + output = set_fb_on_crtc(dpy, pipe, &fb); primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); igt_display_commit2(dpy, dpy->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); @@ -337,7 +329,7 @@ igt_main errno = 0; igt_fixture { - igt_skip_on(n >= display.n_pipes); + igt_display_require_output_on_pipe(&display, n); } igt_subtest_f("basic-flip-%s", -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe. 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe Maarten Lankhorst @ 2018-03-14 14:46 ` Ville Syrjälä 2018-03-16 8:28 ` [igt-dev] [PATCH i-g-t] tests/kms_busy: Convert to using igt_get_single_output_for_pipe, v2 Maarten Lankhorst 0 siblings, 1 reply; 20+ messages in thread From: Ville Syrjälä @ 2018-03-14 14:46 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev On Wed, Mar 14, 2018 at 12:20:19PM +0100, Maarten Lankhorst wrote: > Put a single igt_display_require_output_on_pipe in the fixture, > so we know we always have an output on the pipe and can always > assume it's not NULL. > > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > tests/kms_busy.c | 38 +++++++++++++++----------------------- > 1 file changed, 15 insertions(+), 23 deletions(-) > > diff --git a/tests/kms_busy.c b/tests/kms_busy.c > index 0828a8b38a06..5b4959681025 100644 > --- a/tests/kms_busy.c > +++ b/tests/kms_busy.c > @@ -35,31 +35,23 @@ IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers."); > static igt_output_t * > set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb) > { > + drmModeModeInfoPtr mode; > + igt_plane_t *primary; > igt_output_t *output; > > - for_each_valid_output_on_pipe(dpy, pipe, output) { > - drmModeModeInfoPtr mode; > - igt_plane_t *primary; > - > - if (output->pending_pipe != PIPE_NONE) > - continue; > - > - igt_output_set_pipe(output, pipe); > - mode = igt_output_get_mode(output); > + output = igt_get_single_output_for_pipe(dpy, pipe); > > - igt_create_pattern_fb(dpy->drm_fd, > - mode->hdisplay, mode->vdisplay, > - DRM_FORMAT_XRGB8888, > - LOCAL_I915_FORMAT_MOD_X_TILED, > - fb); > + igt_output_set_pipe(output, pipe); > + mode = igt_output_get_mode(output); > > - primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); > - igt_plane_set_fb(primary, fb); > + igt_create_pattern_fb(dpy->drm_fd, mode->hdisplay, mode->vdisplay, > + DRM_FORMAT_XRGB8888, > + LOCAL_I915_FORMAT_MOD_X_TILED, fb); > > - return output; > - } > + primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); > + igt_plane_set_fb(primary, fb); > > - return NULL; > + return output; > } > > static void do_cleanup_display(igt_display_t *dpy) > @@ -168,7 +160,7 @@ static void test_flip(igt_display_t *dpy, unsigned ring, int pipe, bool modeset) > > signal(SIGALRM, sighandler); > > - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); > + output = set_fb_on_crtc(dpy, pipe, &fb[0]); > igt_display_commit2(dpy, COMMIT_LEGACY); > > igt_create_pattern_fb(dpy->drm_fd, > @@ -246,7 +238,7 @@ static void test_hang(igt_display_t *dpy, unsigned ring, > igt_output_t *output; > igt_plane_t *primary; > > - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); > + output = set_fb_on_crtc(dpy, pipe, &fb[0]); > igt_display_commit2(dpy, COMMIT_ATOMIC); > primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); > > @@ -290,7 +282,7 @@ static void test_pageflip_modeset_hang(igt_display_t *dpy, > igt_plane_t *primary; > igt_spin_t *t; > > - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb))); > + output = set_fb_on_crtc(dpy, pipe, &fb); > primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); > > igt_display_commit2(dpy, dpy->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); > @@ -337,7 +329,7 @@ igt_main > errno = 0; > > igt_fixture { > - igt_skip_on(n >= display.n_pipes); > + igt_display_require_output_on_pipe(&display, n); > } > > igt_subtest_f("basic-flip-%s", > -- > 2.16.2 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- Ville Syrjälä Intel OTC _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t] tests/kms_busy: Convert to using igt_get_single_output_for_pipe, v2. 2018-03-14 14:46 ` Ville Syrjälä @ 2018-03-16 8:28 ` Maarten Lankhorst 0 siblings, 0 replies; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-16 8:28 UTC (permalink / raw) To: igt-dev Put a single igt_display_require_output_on_pipe in the fixture, so we know we always have an output on the pipe and can always assume it's not NULL. Changes since v1: - Move igt_subtest_group upwards, to prevent a skip when no valid output can be found on pipe A, but can be found on other pipes. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> #v1 Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> --- tests/kms_busy.c | 128 +++++++++++++++++++++++++------------------------------ 1 file changed, 59 insertions(+), 69 deletions(-) diff --git a/tests/kms_busy.c b/tests/kms_busy.c index 0828a8b38a06..4a4e0e15608c 100644 --- a/tests/kms_busy.c +++ b/tests/kms_busy.c @@ -35,31 +35,23 @@ IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers."); static igt_output_t * set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb) { + drmModeModeInfoPtr mode; + igt_plane_t *primary; igt_output_t *output; - for_each_valid_output_on_pipe(dpy, pipe, output) { - drmModeModeInfoPtr mode; - igt_plane_t *primary; - - if (output->pending_pipe != PIPE_NONE) - continue; + output = igt_get_single_output_for_pipe(dpy, pipe); - igt_output_set_pipe(output, pipe); - mode = igt_output_get_mode(output); + igt_output_set_pipe(output, pipe); + mode = igt_output_get_mode(output); - igt_create_pattern_fb(dpy->drm_fd, - mode->hdisplay, mode->vdisplay, - DRM_FORMAT_XRGB8888, - LOCAL_I915_FORMAT_MOD_X_TILED, - fb); - - primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); - igt_plane_set_fb(primary, fb); + igt_create_pattern_fb(dpy->drm_fd, mode->hdisplay, mode->vdisplay, + DRM_FORMAT_XRGB8888, + LOCAL_I915_FORMAT_MOD_X_TILED, fb); - return output; - } + primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); + igt_plane_set_fb(primary, fb); - return NULL; + return output; } static void do_cleanup_display(igt_display_t *dpy) @@ -168,7 +160,7 @@ static void test_flip(igt_display_t *dpy, unsigned ring, int pipe, bool modeset) signal(SIGALRM, sighandler); - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); + output = set_fb_on_crtc(dpy, pipe, &fb[0]); igt_display_commit2(dpy, COMMIT_LEGACY); igt_create_pattern_fb(dpy->drm_fd, @@ -246,7 +238,7 @@ static void test_hang(igt_display_t *dpy, unsigned ring, igt_output_t *output; igt_plane_t *primary; - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb[0]))); + output = set_fb_on_crtc(dpy, pipe, &fb[0]); igt_display_commit2(dpy, COMMIT_ATOMIC); primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); @@ -290,7 +282,7 @@ static void test_pageflip_modeset_hang(igt_display_t *dpy, igt_plane_t *primary; igt_spin_t *t; - igt_require((output = set_fb_on_crtc(dpy, pipe, &fb))); + output = set_fb_on_crtc(dpy, pipe, &fb); primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY); igt_display_commit2(dpy, dpy->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); @@ -333,86 +325,84 @@ igt_main /* XXX Extend to cover atomic rendering tests to all planes + legacy */ - for_each_pipe_static(n) { + for_each_pipe_static(n) igt_subtest_group { + igt_hang_t hang; + errno = 0; igt_fixture { - igt_skip_on(n >= display.n_pipes); + igt_display_require_output_on_pipe(&display, n); } igt_subtest_f("basic-flip-%s", - kmstest_pipe_name(n)) { + kmstest_pipe_name(n)) { igt_require(gem_has_ring(display.drm_fd, e->exec_id | e->flags)); test_flip(&display, e->exec_id | e->flags, n, false); } igt_subtest_f("basic-modeset-%s", - kmstest_pipe_name(n)) { + kmstest_pipe_name(n)) { igt_require(gem_has_ring(display.drm_fd, e->exec_id | e->flags)); test_flip(&display, e->exec_id | e->flags, n, true); } - igt_subtest_group { - igt_hang_t hang; - - igt_fixture { - igt_require(gem_has_ring(display.drm_fd, - e->exec_id | e->flags)); + igt_fixture { + igt_require(gem_has_ring(display.drm_fd, + e->exec_id | e->flags)); - hang = igt_allow_hang(display.drm_fd, 0, 0); - } + hang = igt_allow_hang(display.drm_fd, 0, 0); + } - igt_subtest_f("extended-pageflip-modeset-hang-oldfb-%s-%s", - e->name, kmstest_pipe_name(n)) { - igt_require(gem_has_ring(display.drm_fd, - e->exec_id | e->flags)); + igt_subtest_f("extended-pageflip-modeset-hang-oldfb-%s-%s", + e->name, kmstest_pipe_name(n)) { + igt_require(gem_has_ring(display.drm_fd, + e->exec_id | e->flags)); - test_pageflip_modeset_hang(&display, e->exec_id | e->flags, n); - } + test_pageflip_modeset_hang(&display, e->exec_id | e->flags, n); + } - igt_fixture - igt_require(display.is_atomic); + igt_fixture + igt_require(display.is_atomic); - igt_subtest_f("extended-pageflip-hang-oldfb-%s-%s", - e->name, kmstest_pipe_name(n)) - test_hang(&display, e->exec_id | e->flags, n, false, false); + igt_subtest_f("extended-pageflip-hang-oldfb-%s-%s", + e->name, kmstest_pipe_name(n)) + test_hang(&display, e->exec_id | e->flags, n, false, false); - igt_subtest_f("extended-pageflip-hang-newfb-%s-%s", - e->name, kmstest_pipe_name(n)) - test_hang(&display, e->exec_id | e->flags, n, false, true); + igt_subtest_f("extended-pageflip-hang-newfb-%s-%s", + e->name, kmstest_pipe_name(n)) + test_hang(&display, e->exec_id | e->flags, n, false, true); - igt_subtest_f("extended-modeset-hang-oldfb-%s-%s", - e->name, kmstest_pipe_name(n)) - test_hang(&display, e->exec_id | e->flags, n, true, false); + igt_subtest_f("extended-modeset-hang-oldfb-%s-%s", + e->name, kmstest_pipe_name(n)) + test_hang(&display, e->exec_id | e->flags, n, true, false); - igt_subtest_f("extended-modeset-hang-newfb-%s-%s", - e->name, kmstest_pipe_name(n)) - test_hang(&display, e->exec_id | e->flags, n, true, true); + igt_subtest_f("extended-modeset-hang-newfb-%s-%s", + e->name, kmstest_pipe_name(n)) + test_hang(&display, e->exec_id | e->flags, n, true, true); - igt_subtest_f("extended-modeset-hang-oldfb-with-reset-%s-%s", - e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_subtest_f("extended-modeset-hang-oldfb-with-reset-%s-%s", + e->name, kmstest_pipe_name(n)) { + igt_set_module_param_int("force_reset_modeset_test", 1); - test_hang(&display, e->exec_id | e->flags, n, true, false); + test_hang(&display, e->exec_id | e->flags, n, true, false); - igt_set_module_param_int("force_reset_modeset_test", 0); - } + igt_set_module_param_int("force_reset_modeset_test", 0); + } - igt_subtest_f("extended-modeset-hang-newfb-with-reset-%s-%s", - e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_subtest_f("extended-modeset-hang-newfb-with-reset-%s-%s", + e->name, kmstest_pipe_name(n)) { + igt_set_module_param_int("force_reset_modeset_test", 1); - test_hang(&display, e->exec_id | e->flags, n, true, true); + test_hang(&display, e->exec_id | e->flags, n, true, true); - igt_set_module_param_int("force_reset_modeset_test", 0); - } + igt_set_module_param_int("force_reset_modeset_test", 0); + } - igt_fixture { - igt_disallow_hang(display.drm_fd, hang); - } + igt_fixture { + igt_disallow_hang(display.drm_fd, hang); } } -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t 4/5] tests/kms_chv_cursor_fail: Reorder tests, and use igt_display_require_output_on_pipe. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (2 preceding siblings ...) 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe Maarten Lankhorst @ 2018-03-14 11:20 ` Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better Maarten Lankhorst ` (7 subsequent siblings) 11 siblings, 0 replies; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw) To: igt-dev This test is purely about the pipe fifo underrun, so not all outputs need to be tested. Reorder the tests to run per pipe first, this will save a modeset for all different sizes when the tests are run per-binary, and another modeset on each subtest when more than 1 output is connected. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- tests/kms_chv_cursor_fail.c | 85 ++++++++++++++++++--------------------------- 1 file changed, 34 insertions(+), 51 deletions(-) diff --git a/tests/kms_chv_cursor_fail.c b/tests/kms_chv_cursor_fail.c index ffbe39d0c41b..0dd366c3b4b1 100644 --- a/tests/kms_chv_cursor_fail.c +++ b/tests/kms_chv_cursor_fail.c @@ -246,7 +246,7 @@ static void prepare_crtc(data_t *data) primary = igt_output_get_plane_type(data->output, DRM_PLANE_TYPE_PRIMARY); igt_plane_set_fb(primary, &data->primary_fb); - igt_display_commit(display); + igt_display_commit2(display, display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); data->jump_x = (mode->hdisplay - data->curw) / 2; data->jump_y = (mode->vdisplay - data->curh) / 2; @@ -262,34 +262,15 @@ static void prepare_crtc(data_t *data) static void test_crtc(data_t *data, unsigned int edges) { - igt_display_t *display = &data->display; - int valid_tests = 0; - cleanup_crtc(data); create_cursor_fb(data, data->curw, data->curh); - for_each_valid_output_on_pipe(display, data->pipe, data->output) { - prepare_crtc(data); - - valid_tests++; - - igt_info("Beginning %s on pipe %s, connector %s\n", - igt_subtest_name(), - kmstest_pipe_name(data->pipe), - igt_output_name(data->output)); + prepare_crtc(data); - test_edges(data, edges); - - igt_info("\n%s on pipe %s, connector %s: PASSED\n\n", - igt_subtest_name(), - kmstest_pipe_name(data->pipe), - igt_output_name(data->output)); - } + test_edges(data, edges); igt_remove_fb(data->drm_fd, &data->fb); - - igt_require_f(valid_tests, "no valid crtc/connector combinations found\n"); } static int opt_handler(int opt, int opt_index, void *_data) @@ -354,36 +335,38 @@ int main(int argc, char **argv) igt_display_init(&data.display, data.drm_fd); } - for (data.curw = 64; data.curw <= 256; data.curw *= 2) { - data.curh = data.curw; - for (data.pipe = PIPE_A; data.pipe <= PIPE_C; data.pipe++) { - igt_subtest_f("pipe-%s-%dx%d-left-edge", - kmstest_pipe_name(data.pipe), - data.curw, data.curh) { - igt_require(data.pipe < data.display.n_pipes); - igt_require(data.curw <= max_curw && data.curh <= max_curh); - test_crtc(&data, EDGE_LEFT); - } - igt_subtest_f("pipe-%s-%dx%d-right-edge", - kmstest_pipe_name(data.pipe), - data.curw, data.curh) { - igt_require(data.pipe < data.display.n_pipes); - igt_require(data.curw <= max_curw && data.curh <= max_curh); - test_crtc(&data, EDGE_RIGHT); + for_each_pipe_static(data.pipe) { + igt_subtest_group { + igt_fixture { + igt_display_require_output_on_pipe(&data.display, data.pipe); + data.output = igt_get_single_output_for_pipe(&data.display, data.pipe); } - igt_subtest_f("pipe-%s-%dx%d-top-edge", - kmstest_pipe_name(data.pipe), - data.curw, data.curh) { - igt_require(data.pipe < data.display.n_pipes); - igt_require(data.curw <= max_curw && data.curh <= max_curh); - test_crtc(&data, EDGE_TOP); - } - igt_subtest_f("pipe-%s-%dx%d-bottom-edge", - kmstest_pipe_name(data.pipe), - data.curw, data.curh) { - igt_require(data.pipe < data.display.n_pipes); - igt_require(data.curw <= max_curw && data.curh <= max_curh); - test_crtc(&data, EDGE_BOTTOM); + + for (data.curw = 64; data.curw <= 256; data.curw *= 2) { + data.curh = data.curw; + + igt_fixture + igt_require(data.curw <= max_curw && data.curh <= max_curh); + + igt_subtest_f("pipe-%s-%dx%d-left-edge", + kmstest_pipe_name(data.pipe), + data.curw, data.curh) + test_crtc(&data, EDGE_LEFT); + + igt_subtest_f("pipe-%s-%dx%d-right-edge", + kmstest_pipe_name(data.pipe), + data.curw, data.curh) + test_crtc(&data, EDGE_RIGHT); + + igt_subtest_f("pipe-%s-%dx%d-top-edge", + kmstest_pipe_name(data.pipe), + data.curw, data.curh) + test_crtc(&data, EDGE_TOP); + + igt_subtest_f("pipe-%s-%dx%d-bottom-edge", + kmstest_pipe_name(data.pipe), + data.curw, data.curh) + test_crtc(&data, EDGE_BOTTOM); } } } -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (3 preceding siblings ...) 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_chv_cursor_fail: Reorder tests, and use igt_display_require_output_on_pipe Maarten Lankhorst @ 2018-03-14 11:20 ` Maarten Lankhorst 2018-03-14 14:48 ` Ville Syrjälä 2018-03-14 13:37 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Patchwork ` (6 subsequent siblings) 11 siblings, 1 reply; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-14 11:20 UTC (permalink / raw) To: igt-dev Clean up cursor fb in cleanup_crtc, which means that cursor fb has to be created after prepare_crtc() is called. This will fix a small leak when a subtest fails. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- tests/kms_chv_cursor_fail.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/tests/kms_chv_cursor_fail.c b/tests/kms_chv_cursor_fail.c index 0dd366c3b4b1..7138e549aeb7 100644 --- a/tests/kms_chv_cursor_fail.c +++ b/tests/kms_chv_cursor_fail.c @@ -224,6 +224,7 @@ static void cleanup_crtc(data_t *data) data->pipe_crc = NULL; igt_remove_fb(data->drm_fd, &data->primary_fb); + igt_remove_fb(data->drm_fd, &data->fb); } static void prepare_crtc(data_t *data) @@ -262,15 +263,11 @@ static void prepare_crtc(data_t *data) static void test_crtc(data_t *data, unsigned int edges) { - cleanup_crtc(data); + prepare_crtc(data); create_cursor_fb(data, data->curw, data->curh); - prepare_crtc(data); - test_edges(data, edges); - - igt_remove_fb(data->drm_fd, &data->fb); } static int opt_handler(int opt, int opt_index, void *_data) -- 2.16.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better. 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better Maarten Lankhorst @ 2018-03-14 14:48 ` Ville Syrjälä 2018-03-19 15:07 ` Maarten Lankhorst 0 siblings, 1 reply; 20+ messages in thread From: Ville Syrjälä @ 2018-03-14 14:48 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev On Wed, Mar 14, 2018 at 12:20:21PM +0100, Maarten Lankhorst wrote: > Clean up cursor fb in cleanup_crtc, which means that cursor fb > has to be created after prepare_crtc() is called. > > This will fix a small leak when a subtest fails. > > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > --- > tests/kms_chv_cursor_fail.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/tests/kms_chv_cursor_fail.c b/tests/kms_chv_cursor_fail.c > index 0dd366c3b4b1..7138e549aeb7 100644 > --- a/tests/kms_chv_cursor_fail.c > +++ b/tests/kms_chv_cursor_fail.c > @@ -224,6 +224,7 @@ static void cleanup_crtc(data_t *data) > data->pipe_crc = NULL; > > igt_remove_fb(data->drm_fd, &data->primary_fb); > + igt_remove_fb(data->drm_fd, &data->fb); > } > > static void prepare_crtc(data_t *data) > @@ -262,15 +263,11 @@ static void prepare_crtc(data_t *data) > > static void test_crtc(data_t *data, unsigned int edges) > { > - cleanup_crtc(data); > + prepare_crtc(data); > > create_cursor_fb(data, data->curw, data->curh); 4 and 5 lgtm as well Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > - prepare_crtc(data); > - > test_edges(data, edges); > - > - igt_remove_fb(data->drm_fd, &data->fb); > } > > static int opt_handler(int opt, int opt_index, void *_data) > -- > 2.16.2 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- Ville Syrjälä Intel OTC _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better. 2018-03-14 14:48 ` Ville Syrjälä @ 2018-03-19 15:07 ` Maarten Lankhorst 0 siblings, 0 replies; 20+ messages in thread From: Maarten Lankhorst @ 2018-03-19 15:07 UTC (permalink / raw) To: Ville Syrjälä; +Cc: igt-dev Op 14-03-18 om 15:48 schreef Ville Syrjälä: > On Wed, Mar 14, 2018 at 12:20:21PM +0100, Maarten Lankhorst wrote: >> Clean up cursor fb in cleanup_crtc, which means that cursor fb >> has to be created after prepare_crtc() is called. >> >> This will fix a small leak when a subtest fails. >> >> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> >> --- >> tests/kms_chv_cursor_fail.c | 7 ++----- >> 1 file changed, 2 insertions(+), 5 deletions(-) >> >> diff --git a/tests/kms_chv_cursor_fail.c b/tests/kms_chv_cursor_fail.c >> index 0dd366c3b4b1..7138e549aeb7 100644 >> --- a/tests/kms_chv_cursor_fail.c >> +++ b/tests/kms_chv_cursor_fail.c >> @@ -224,6 +224,7 @@ static void cleanup_crtc(data_t *data) >> data->pipe_crc = NULL; >> >> igt_remove_fb(data->drm_fd, &data->primary_fb); >> + igt_remove_fb(data->drm_fd, &data->fb); >> } >> >> static void prepare_crtc(data_t *data) >> @@ -262,15 +263,11 @@ static void prepare_crtc(data_t *data) >> >> static void test_crtc(data_t *data, unsigned int edges) >> { >> - cleanup_crtc(data); >> + prepare_crtc(data); >> >> create_cursor_fb(data, data->curw, data->curh); > 4 and 5 lgtm as well > > Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Thanks, pushed after tests succeeded. :) _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (4 preceding siblings ...) 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better Maarten Lankhorst @ 2018-03-14 13:37 ` Patchwork 2018-03-14 17:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork ` (5 subsequent siblings) 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-14 13:37 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. URL : https://patchwork.freedesktop.org/series/39953/ State : success == Summary == IGT patchset tested on top of latest successful build 518ccf1d1b452b9d26ddcf54249fb6e91f451f90 tests/kms_frontbuffer_tracking: Respect mode when collecting CRCs. with latest DRM-Tip kernel build CI_DRM_3926 47934443f321 drm-tip: 2018y-03m-14d-12h-41m-28s UTC integration manifest Testlist changes: +igt@kms_chv_cursor_fail@pipe-d-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-top-edge ---- Known issues: Test gem_mmap_gtt: Subgroup basic-small-bo-tiledx: fail -> PASS (fi-gdg-551) fdo#102575 fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575 fi-bdw-gvtdvm total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:434s fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:383s fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:298s fi-bxt-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:512s fi-bxt-j4205 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:513s fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:526s fi-cfl-8700k total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:413s fi-cfl-s2 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:575s fi-cfl-u total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:514s fi-cnl-y3 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:587s fi-elk-e7500 total:288 pass:229 dwarn:0 dfail:0 fail:0 skip:59 time:429s fi-gdg-551 total:288 pass:180 dwarn:0 dfail:0 fail:0 skip:108 time:318s fi-glk-1 total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:530s fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:404s fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:429s fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:427s fi-kbl-7500u total:288 pass:263 dwarn:1 dfail:0 fail:0 skip:24 time:475s fi-kbl-7567u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:470s fi-kbl-r total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:514s fi-pnv-d510 total:288 pass:222 dwarn:1 dfail:0 fail:0 skip:65 time:665s fi-skl-6260u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:445s fi-skl-6600u total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:531s fi-skl-6700hq total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:544s fi-skl-6700k2 total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:506s fi-skl-6770hq total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:496s fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:428s fi-skl-gvtdvm total:288 pass:265 dwarn:0 dfail:0 fail:0 skip:23 time:443s fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:401s Blacklisted hosts: fi-cnl-drrs total:288 pass:257 dwarn:3 dfail:0 fail:0 skip:28 time:528s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1128/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (5 preceding siblings ...) 2018-03-14 13:37 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Patchwork @ 2018-03-14 17:22 ` Patchwork 2018-03-15 18:31 ` [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) Patchwork ` (4 subsequent siblings) 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-14 17:22 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. URL : https://patchwork.freedesktop.org/series/39953/ State : failure == Summary == ---- Possible new issues: Test kms_rmfb: Subgroup close-fd: pass -> CRASH (shard-apl) pass -> CRASH (shard-hsw) pass -> CRASH (shard-snb) Subgroup rmfb-ioctl: pass -> CRASH (shard-apl) pass -> CRASH (shard-hsw) pass -> CRASH (shard-snb) ---- Known issues: Test kms_flip: Subgroup dpms-vs-vblank-race: pass -> FAIL (shard-hsw) fdo#103060 Subgroup flip-vs-panning-vs-hang-interruptible: dmesg-warn -> PASS (shard-snb) fdo#103821 Subgroup plain-flip-fb-recreate: pass -> FAIL (shard-hsw) fdo#100368 Test kms_plane: Subgroup plane-position-hole-dpms-pipe-b-planes: fail -> PASS (shard-apl) fdo#103166 +1 Test kms_rotation_crc: Subgroup sprite-rotation-180: pass -> FAIL (shard-snb) fdo#105185 +1 fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060 fdo#103821 https://bugs.freedesktop.org/show_bug.cgi?id=103821 fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368 fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166 fdo#105185 https://bugs.freedesktop.org/show_bug.cgi?id=105185 shard-apl total:3446 pass:1796 dwarn:1 dfail:0 fail:8 skip:1637 time:12420s shard-hsw total:3480 pass:1765 dwarn:1 dfail:0 fail:4 skip:1707 time:11728s shard-snb total:3480 pass:1356 dwarn:1 dfail:0 fail:4 skip:2117 time:7201s Blacklisted hosts: shard-kbl total:3395 pass:1882 dwarn:1 dfail:0 fail:9 skip:1500 time:9138s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1128/shards.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (6 preceding siblings ...) 2018-03-14 17:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork @ 2018-03-15 18:31 ` Patchwork 2018-03-15 19:29 ` Patchwork ` (3 subsequent siblings) 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-15 18:31 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) URL : https://patchwork.freedesktop.org/series/39953/ State : warning == Summary == IGT patchset tested on top of latest successful build 17ae4da9059464b9386dd56b07f29322c914ff7b tests/kms_plane_scaling: Change minimum fb height for YUV 420 planar with latest DRM-Tip kernel build CI_DRM_3934 3b4800f0237f drm-tip: 2018y-03m-15d-15h-48m-56s UTC integration manifest Testlist changes: +igt@kms_chv_cursor_fail@pipe-d-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-top-edge ---- Possible new issues: Test kms_busy: Subgroup basic-flip-c: pass -> SKIP (fi-bsw-n3050) ---- Known issues: Test gem_mmap_gtt: Subgroup basic-small-bo-tiledx: pass -> FAIL (fi-gdg-551) fdo#102575 Test kms_flip: Subgroup basic-flip-vs-wf_vblank: pass -> FAIL (fi-cfl-s2) fdo#100368 Test kms_pipe_crc_basic: Subgroup suspend-read-crc-pipe-c: pass -> INCOMPLETE (fi-bxt-dsi) fdo#103927 fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575 fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368 fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927 fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:434s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:440s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:381s fi-bsw-n3050 total:285 pass:238 dwarn:0 dfail:0 fail:0 skip:47 time:538s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:296s fi-bxt-dsi total:243 pass:216 dwarn:0 dfail:0 fail:0 skip:26 fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:515s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:519s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:506s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:406s fi-cfl-s2 total:285 pass:258 dwarn:0 dfail:0 fail:1 skip:26 time:581s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:513s fi-cnl-drrs total:285 pass:254 dwarn:3 dfail:0 fail:0 skip:28 time:535s fi-cnl-y3 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:582s fi-elk-e7500 total:285 pass:226 dwarn:0 dfail:0 fail:0 skip:59 time:431s fi-gdg-551 total:285 pass:176 dwarn:0 dfail:0 fail:1 skip:108 time:319s fi-glk-1 total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:535s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:401s fi-ilk-650 total:285 pass:225 dwarn:0 dfail:0 fail:0 skip:60 time:420s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:464s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:428s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:482s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:466s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:513s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:657s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:444s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:529s fi-skl-6700hq total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:540s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:509s fi-skl-6770hq total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:494s fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:429s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:446s fi-snb-2520m total:3 pass:2 dwarn:0 dfail:0 fail:0 skip:0 fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:407s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1140/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (7 preceding siblings ...) 2018-03-15 18:31 ` [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) Patchwork @ 2018-03-15 19:29 ` Patchwork 2018-03-16 7:29 ` Patchwork ` (2 subsequent siblings) 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-15 19:29 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) URL : https://patchwork.freedesktop.org/series/39953/ State : warning == Summary == IGT patchset tested on top of latest successful build 2e92134b4e4f754239f9721b8781ce2fc0aab07c tests/kms_frontbuffer_tracking: Reduce fbc status spam, v2. with latest DRM-Tip kernel build CI_DRM_3934 3b4800f0237f drm-tip: 2018y-03m-15d-15h-48m-56s UTC integration manifest Testlist changes: +igt@kms_chv_cursor_fail@pipe-d-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-top-edge ---- Possible new issues: Test kms_busy: Subgroup basic-flip-c: pass -> SKIP (fi-bsw-n3050) ---- Known issues: Test debugfs_test: Subgroup read_all_entries: incomplete -> PASS (fi-snb-2520m) fdo#103713 Test gem_mmap_gtt: Subgroup basic-small-bo-tiledx: pass -> FAIL (fi-gdg-551) fdo#102575 Test kms_pipe_crc_basic: Subgroup suspend-read-crc-pipe-b: pass -> DMESG-WARN (fi-cnl-y3) fdo#104951 fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713 fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575 fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951 fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:433s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:445s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:383s fi-bsw-n3050 total:285 pass:238 dwarn:0 dfail:0 fail:0 skip:47 time:540s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:299s fi-bxt-dsi total:285 pass:255 dwarn:0 dfail:0 fail:0 skip:30 time:516s fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:512s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:520s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:505s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:411s fi-cfl-s2 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:573s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:514s fi-cnl-drrs total:285 pass:254 dwarn:3 dfail:0 fail:0 skip:28 time:520s fi-cnl-y3 total:285 pass:258 dwarn:1 dfail:0 fail:0 skip:26 time:588s fi-elk-e7500 total:285 pass:226 dwarn:0 dfail:0 fail:0 skip:59 time:420s fi-gdg-551 total:285 pass:176 dwarn:0 dfail:0 fail:1 skip:108 time:320s fi-glk-1 total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:538s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:404s fi-ilk-650 total:285 pass:225 dwarn:0 dfail:0 fail:0 skip:60 time:426s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:473s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:433s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:475s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:471s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:512s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:654s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:444s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:529s fi-skl-6700hq total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:541s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:506s fi-skl-6770hq total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:502s fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:427s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:446s fi-snb-2520m total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:563s fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:403s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1141/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (8 preceding siblings ...) 2018-03-15 19:29 ` Patchwork @ 2018-03-16 7:29 ` Patchwork 2018-03-16 9:03 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) Patchwork 2018-03-16 10:41 ` [igt-dev] ✗ Fi.CI.IGT: warning " Patchwork 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-16 7:29 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) URL : https://patchwork.freedesktop.org/series/39953/ State : warning == Summary == IGT patchset tested on top of latest successful build 2e92134b4e4f754239f9721b8781ce2fc0aab07c tests/kms_frontbuffer_tracking: Reduce fbc status spam, v2. with latest DRM-Tip kernel build CI_DRM_3935 9ac56f76a6a2 drm-tip: 2018y-03m-15d-22h-52m-42s UTC integration manifest Testlist changes: +igt@kms_chv_cursor_fail@pipe-d-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-top-edge ---- Possible new issues: Test kms_busy: Subgroup basic-flip-c: pass -> SKIP (fi-bsw-n3050) ---- Known issues: Test gem_mmap_gtt: Subgroup basic-small-bo-tiledx: pass -> FAIL (fi-gdg-551) fdo#102575 Test prime_vgem: Subgroup basic-fence-flip: pass -> FAIL (fi-ilk-650) fdo#104008 fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575 fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008 fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:432s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:442s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:381s fi-bsw-n3050 total:285 pass:238 dwarn:0 dfail:0 fail:0 skip:47 time:536s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:298s fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:512s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:515s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:503s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:410s fi-cfl-s2 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:579s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:513s fi-cnl-drrs total:285 pass:254 dwarn:3 dfail:0 fail:0 skip:28 time:525s fi-elk-e7500 total:285 pass:226 dwarn:0 dfail:0 fail:0 skip:59 time:429s fi-gdg-551 total:285 pass:176 dwarn:0 dfail:0 fail:1 skip:108 time:319s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:401s fi-ilk-650 total:285 pass:224 dwarn:0 dfail:0 fail:1 skip:60 time:421s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:470s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:429s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:475s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:470s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:513s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:655s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:445s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:534s fi-skl-6700hq total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:540s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:506s fi-skl-6770hq total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:502s fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:428s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:448s fi-snb-2520m total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:585s fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:399s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1143/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (9 preceding siblings ...) 2018-03-16 7:29 ` Patchwork @ 2018-03-16 9:03 ` Patchwork 2018-03-16 10:41 ` [igt-dev] ✗ Fi.CI.IGT: warning " Patchwork 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-16 9:03 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) URL : https://patchwork.freedesktop.org/series/39953/ State : success == Summary == IGT patchset tested on top of latest successful build 2e92134b4e4f754239f9721b8781ce2fc0aab07c tests/kms_frontbuffer_tracking: Reduce fbc status spam, v2. with latest DRM-Tip kernel build CI_DRM_3936 e867298503d2 drm-tip: 2018y-03m-16d-07h-43m-57s UTC integration manifest Testlist changes: +igt@kms_chv_cursor_fail@pipe-d-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-d-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-d-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-d-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-e-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-e-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-e-256x256-top-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-left-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-right-edge +igt@kms_chv_cursor_fail@pipe-f-64x64-top-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-left-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-right-edge +igt@kms_chv_cursor_fail@pipe-f-128x128-top-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-bottom-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-left-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-right-edge +igt@kms_chv_cursor_fail@pipe-f-256x256-top-edge fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:432s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:442s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:380s fi-bsw-n3050 total:285 pass:239 dwarn:0 dfail:0 fail:0 skip:46 time:538s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:298s fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:511s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:517s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:505s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:411s fi-cfl-s2 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:574s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:513s fi-cnl-drrs total:285 pass:254 dwarn:3 dfail:0 fail:0 skip:28 time:524s fi-cnl-y3 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:586s fi-elk-e7500 total:285 pass:226 dwarn:0 dfail:0 fail:0 skip:59 time:420s fi-gdg-551 total:285 pass:176 dwarn:0 dfail:0 fail:1 skip:108 time:320s fi-glk-1 total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:539s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:403s fi-ilk-650 total:285 pass:225 dwarn:0 dfail:0 fail:0 skip:60 time:423s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:471s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:429s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:474s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:471s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:516s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:656s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:444s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:533s fi-skl-6700hq total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:540s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:503s fi-skl-6770hq total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:490s fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:431s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:447s fi-snb-2520m total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:586s fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:399s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1145/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst ` (10 preceding siblings ...) 2018-03-16 9:03 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) Patchwork @ 2018-03-16 10:41 ` Patchwork 11 siblings, 0 replies; 20+ messages in thread From: Patchwork @ 2018-03-16 10:41 UTC (permalink / raw) To: Maarten Lankhorst; +Cc: igt-dev == Series Details == Series: lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) URL : https://patchwork.freedesktop.org/series/39953/ State : warning == Summary == ---- Possible new issues: Test drv_suspend: Subgroup fence-restore-tiled2untiled: pass -> SKIP (shard-snb) Test gem_tiled_blits: Subgroup normal: pass -> SKIP (shard-apl) Test gem_tiled_swapping: Subgroup non-threaded: skip -> PASS (shard-snb) ---- Known issues: Test gem_eio: Subgroup in-flight-contexts: pass -> INCOMPLETE (shard-apl) fdo#105341 Test kms_flip: Subgroup 2x-flip-vs-expired-vblank-interruptible: dmesg-warn -> PASS (shard-hsw) fdo#102887 Subgroup modeset-vs-vblank-race: pass -> FAIL (shard-hsw) fdo#103060 Test kms_plane_multiple: Subgroup atomic-pipe-a-tiling-x: fail -> PASS (shard-snb) fdo#103166 Test kms_rotation_crc: Subgroup primary-rotation-180: fail -> PASS (shard-snb) fdo#103925 +1 Test kms_vblank: Subgroup pipe-b-ts-continuation-suspend: pass -> SKIP (shard-snb) fdo#105411 Test perf: Subgroup polling: pass -> FAIL (shard-hsw) fdo#102252 fdo#105341 https://bugs.freedesktop.org/show_bug.cgi?id=105341 fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887 fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060 fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166 fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925 fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411 fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252 shard-apl total:3392 pass:1771 dwarn:1 dfail:0 fail:7 skip:1611 time:12203s shard-hsw total:3478 pass:1766 dwarn:1 dfail:0 fail:3 skip:1707 time:11739s shard-snb total:3478 pass:1356 dwarn:1 dfail:0 fail:2 skip:2119 time:7154s Blacklisted hosts: shard-kbl total:2117 pass:1167 dwarn:1 dfail:0 fail:8 skip:940 time:5692s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1145/shards.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2018-03-19 15:07 UTC | newest] Thread overview: 20+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-03-14 11:20 [igt-dev] [PATCH i-g-t 0/5] lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add functions to get only a single output for a pipe Maarten Lankhorst 2018-03-14 14:43 ` Ville Syrjälä 2018-03-15 16:58 ` [igt-dev] [PATCH i-g-t] lib/igt_kms: Add functions to get only a single output for a pipe, v2 Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_rmfb: Use for_each_pipe_with_single_output Maarten Lankhorst 2018-03-14 14:44 ` Ville Syrjälä 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_busy: Convert to using igt_get_single_output_for_pipe Maarten Lankhorst 2018-03-14 14:46 ` Ville Syrjälä 2018-03-16 8:28 ` [igt-dev] [PATCH i-g-t] tests/kms_busy: Convert to using igt_get_single_output_for_pipe, v2 Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_chv_cursor_fail: Reorder tests, and use igt_display_require_output_on_pipe Maarten Lankhorst 2018-03-14 11:20 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_chv_cursor_fail: Handle cleanup better Maarten Lankhorst 2018-03-14 14:48 ` Ville Syrjälä 2018-03-19 15:07 ` Maarten Lankhorst 2018-03-14 13:37 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe Patchwork 2018-03-14 17:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 2018-03-15 18:31 ` [igt-dev] ✗ Fi.CI.BAT: warning for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev2) Patchwork 2018-03-15 19:29 ` Patchwork 2018-03-16 7:29 ` Patchwork 2018-03-16 9:03 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/igt_kms: Add for_each_pipe_with_single_output and igt_get_single_output_for_pipe. (rev3) Patchwork 2018-03-16 10:41 ` [igt-dev] ✗ Fi.CI.IGT: warning " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox