All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: igt-dev@lists.freedesktop.org
Subject: Re: [igt-dev] [PATCH i-g-t 5/6] tests/kms_color: Split invalid_lut_sizes() into gamma vs. degamma versions
Date: Wed, 3 Apr 2019 17:20:11 +0300	[thread overview]
Message-ID: <20190403142011.GW3888@intel.com> (raw)
In-Reply-To: <20190403135208.GH2665@phenom.ffwll.local>

On Wed, Apr 03, 2019 at 03:52:08PM +0200, Daniel Vetter wrote:
> On Tue, Apr 02, 2019 at 07:33:47PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > 
> > Split the invalid-lut-sizes test into separate gamma and degamma tests.
> > This way we can report SKIP for the thing we don't have. Also make the
> > CTM invalid sizes test report a skip too.
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> >  tests/kms_color.c | 103 ++++++++++++++++++++++++++--------------------
> >  1 file changed, 59 insertions(+), 44 deletions(-)
> > 
> > diff --git a/tests/kms_color.c b/tests/kms_color.c
> > index 554356a04f75..fd4c9a6dd812 100644
> > --- a/tests/kms_color.c
> > +++ b/tests/kms_color.c
> > @@ -1091,57 +1091,70 @@ pipe_set_property_blob(igt_pipe_t *pipe, enum igt_atomic_crtc_properties prop, v
> >  }
> >  
> >  static void
> > -invalid_lut_sizes(data_t *data)
> > +invalid_gamma_lut_sizes(data_t *data)
> >  {
> >  	igt_display_t *display = &data->display;
> >  	igt_pipe_t *pipe = &display->pipes[0];
> > -	size_t degamma_lut_size = data->degamma_lut_size * sizeof(struct drm_color_lut);
> >  	size_t gamma_lut_size = data->gamma_lut_size * sizeof(struct drm_color_lut);
> > +	struct drm_color_lut *gamma_lut;
> > +
> > +	igt_require(igt_pipe_obj_has_prop(pipe, IGT_CRTC_GAMMA_LUT));
> >  
> > -	struct drm_color_lut *degamma_lut = malloc(degamma_lut_size * 2);
> > -	struct drm_color_lut *gamma_lut = malloc(gamma_lut_size * 2);
> > +	gamma_lut = malloc(gamma_lut_size * 2);
> >  
> >  	igt_display_commit2(display, display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
> >  
> > -	if (igt_pipe_obj_has_prop(pipe, IGT_CRTC_DEGAMMA_LUT)) {
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > -						     degamma_lut, 1), -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > -						     degamma_lut, degamma_lut_size + 1),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > -						     degamma_lut, degamma_lut_size - 1),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > -						     degamma_lut, degamma_lut_size + sizeof(struct drm_color_lut)),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_DEGAMMA_LUT, pipe->crtc_id),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_DEGAMMA_LUT, 4096 * 4096),
> > -			      -EINVAL);
> > -	}
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > +					     gamma_lut, 1),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > +					     gamma_lut, gamma_lut_size + 1),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > +					     gamma_lut, gamma_lut_size - 1),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > +					     gamma_lut, gamma_lut_size + sizeof(struct drm_color_lut)),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_GAMMA_LUT, pipe->crtc_id),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_GAMMA_LUT, 4096 * 4096),
> > +		      -EINVAL);
> >  
> > -	if (igt_pipe_obj_has_prop(pipe, IGT_CRTC_GAMMA_LUT)) {
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > -						     gamma_lut, 1),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > -						     gamma_lut, gamma_lut_size + 1),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > -						     gamma_lut, gamma_lut_size - 1),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_GAMMA_LUT,
> > -						     gamma_lut, gamma_lut_size + sizeof(struct drm_color_lut)),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_GAMMA_LUT, pipe->crtc_id),
> > -			      -EINVAL);
> > -		igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_GAMMA_LUT, 4096 * 4096),
> > -			      -EINVAL);
> > -	}
> > +	free(gamma_lut);
> > +}
> > +
> > +static void
> > +invalid_degamma_lut_sizes(data_t *data)
> > +{
> > +	igt_display_t *display = &data->display;
> > +	igt_pipe_t *pipe = &display->pipes[0];
> > +	size_t degamma_lut_size = data->degamma_lut_size * sizeof(struct drm_color_lut);
> > +	struct drm_color_lut *degamma_lut;
> > +
> > +	igt_require(igt_pipe_obj_has_prop(pipe, IGT_CRTC_DEGAMMA_LUT));
> > +
> > +	degamma_lut = malloc(degamma_lut_size * 2);
> > +
> > +	igt_display_commit2(display, display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
> > +
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > +					     degamma_lut, 1), -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > +					     degamma_lut, degamma_lut_size + 1),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > +					     degamma_lut, degamma_lut_size - 1),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob(pipe, IGT_CRTC_DEGAMMA_LUT,
> > +					     degamma_lut, degamma_lut_size + sizeof(struct drm_color_lut)),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_DEGAMMA_LUT, pipe->crtc_id),
> > +		      -EINVAL);
> > +	igt_assert_eq(pipe_set_property_blob_id(pipe, IGT_CRTC_DEGAMMA_LUT, 4096 * 4096),
> > +		      -EINVAL);
> >  
> >  	free(degamma_lut);
> > -	free(gamma_lut);
> >  }
> >  
> >  static void
> > @@ -1151,8 +1164,7 @@ invalid_ctm_matrix_sizes(data_t *data)
> >  	igt_pipe_t *pipe = &display->pipes[0];
> >  	void *ptr;
> >  
> > -	if (!igt_pipe_obj_has_prop(pipe, IGT_CRTC_CTM))
> > -		return;
> > +	igt_require(igt_pipe_obj_has_prop(pipe, IGT_CRTC_CTM));
> 
> Ah, you fixed that one too. I guess I should have kept reviewing before
> typing that quick patch of mine :-)

Yeah, well I probably shouldn't have hidden it in this patch. But
lazyness won out for whatever reason and I didn't split it out.

> 
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> 
> >  
> >  	ptr = malloc(sizeof(struct drm_color_ctm) * 4);
> >  
> > @@ -1195,8 +1207,11 @@ igt_main
> >  		igt_subtest_group
> >  			run_tests_for_pipe(&data, pipe);
> >  
> > -	igt_subtest_f("pipe-invalid-lut-sizes")
> > -		invalid_lut_sizes(&data);
> > +	igt_subtest_f("pipe-invalid-gamma-lut-sizes")
> > +		invalid_gamma_lut_sizes(&data);
> > +
> > +	igt_subtest_f("pipe-invalid-degamma-lut-sizes")
> > +		invalid_degamma_lut_sizes(&data);
> >  
> >  	igt_subtest_f("pipe-invalid-ctm-matrix-sizes")
> >  		invalid_ctm_matrix_sizes(&data);
> > -- 
> > 2.19.2
> > 
> > _______________________________________________
> > igt-dev mailing list
> > igt-dev@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/igt-dev
> 
> -- 
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  reply	other threads:[~2019-04-03 14:20 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-02 16:33 [igt-dev] [PATCH i-g-t 1/6] tests/kms_color: Nuke local struct definitions Ville Syrjala
2019-04-02 16:33 ` [igt-dev] [PATCH i-g-t 2/6] tests/kms_color: Wrap LUTs in a gamma_lut_t struct Ville Syrjala
2019-04-03 10:50   ` Daniel Vetter
2019-04-02 16:33 ` [igt-dev] [PATCH i-g-t 3/6] tests/kms_color: Reuse some already compute values Ville Syrjala
2019-04-03 10:51   ` Daniel Vetter
2019-04-02 16:33 ` [igt-dev] [PATCH i-g-t 4/6] tests/kms_color: Allow most subtests to run with a partial color pipeline Ville Syrjala
2019-04-03 13:50   ` Daniel Vetter
2019-04-03 14:22     ` Ville Syrjälä
2019-04-02 16:33 ` [igt-dev] [PATCH i-g-t 5/6] tests/kms_color: Split invalid_lut_sizes() into gamma vs. degamma versions Ville Syrjala
2019-04-03 13:52   ` Daniel Vetter
2019-04-03 14:20     ` Ville Syrjälä [this message]
2019-04-02 16:33 ` [igt-dev] [PATCH i-g-t 6/6] tests/kms_color: Make legacy-gamma-reset work with a partial color pipeline Ville Syrjala
2019-04-03 13:53   ` Daniel Vetter
2019-04-02 17:37 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/6] tests/kms_color: Nuke local struct definitions Patchwork
2019-04-03  6:33 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-04-03  8:40 ` [igt-dev] [PATCH i-g-t 1/6] " Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190403142011.GW3888@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=daniel@ffwll.ch \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.