All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Shankar, Uma" <uma.shankar@intel.com>
To: "Sharma, Swati2" <swati2.sharma@intel.com>,
	"igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>
Subject: Re: [igt-dev] [PATCH i-g-t] tests/kms_hdr: Add negative test for invalid metadata sizes
Date: Thu, 2 Feb 2023 18:31:49 +0000	[thread overview]
Message-ID: <DM4PR11MB63606D3F16B6C2CE7DAFB1ECF4D69@DM4PR11MB6360.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20221226103838.1761-1-swati2.sharma@intel.com>



> -----Original Message-----
> From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of Swati Sharma
> Sent: Monday, December 26, 2022 4:09 PM
> To: igt-dev@lists.freedesktop.org
> Subject: [igt-dev] [PATCH i-g-t] tests/kms_hdr: Add negative test for invalid
> metadata sizes
> 
> Negative test is added in which HDR output metadata prop is set with invalid sizes.
> 
> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
> ---
>  tests/kms_hdr.c | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
> 
> diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c index 655c3e14..629a45a7 100644
> --- a/tests/kms_hdr.c
> +++ b/tests/kms_hdr.c
> @@ -50,6 +50,7 @@ enum {
>  	TEST_DPMS = 1 << 1,
>  	TEST_SUSPEND = 1 << 2,
>  	TEST_SWAP = 1 << 3,
> +	TEST_INVALID_METADATA_SIZES = 1 << 4,
>  };
> 
>  /* BPC connector state. */
> @@ -327,6 +328,18 @@ static void set_hdr_output_metadata(data_t *data,
>  				     meta ? sizeof(*meta) : 0);
>  }
> 
> +/* Sets the HDR output metadata prop with invalid size. */ static int
> +set_invalid_hdr_output_metadata(data_t *data,
> +					   struct hdr_output_metadata const
> *meta,
> +					   size_t length)
> +{
> +	igt_output_replace_prop_blob(data->output,
> +				     IGT_CONNECTOR_HDR_OUTPUT_METADATA,
> meta,
> +				     meta ? length : 0);
> +
> +	return igt_display_try_commit_atomic(&data->display,
> +DRM_MODE_ATOMIC_ALLOW_MODESET, NULL); }
> +
>  /* Converts a double to 861-G spec FP format. */  static uint16_t
> calc_hdr_float(double val)  { @@ -518,6 +531,19 @@ static void
> test_static_swap(data_t *data, enum pipe pipe, igt_output_t *output)
>  	igt_remove_fb(data->fd, &afb);
>  }
> 
> +static void test_invalid_metadata_sizes(data_t *data, igt_output_t
> +*output) {
> +	struct hdr_output_metadata hdr;
> +	size_t metadata_size = sizeof(&hdr);
> +
> +	fill_hdr_output_metadata_st2048(&hdr);
> +
> +	igt_assert_eq(set_invalid_hdr_output_metadata(data, &hdr, 1), -EINVAL);
> +	igt_assert_eq(set_invalid_hdr_output_metadata(data, &hdr, metadata_size
> + 1), -EINVAL);
> +	igt_assert_eq(set_invalid_hdr_output_metadata(data, &hdr, metadata_size
> - 1), -EINVAL);
> +	igt_assert_eq(set_invalid_hdr_output_metadata(data, &hdr,
> +metadata_size + sizeof(struct hdr_output_metadata)), -EINVAL); 

I guess 2 invalid sizes should be enough. Other that that, looks good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>

}
> +
>  /* Returns true if an output supports HDR metadata property. */  static bool
> has_hdr(igt_output_t *output)  { @@ -565,6 +591,8 @@ static void test_hdr(data_t
> *data, uint32_t flags)
>  						test_static_toggle(data, pipe,
> output, flags);
>  					if (flags & TEST_SWAP)
>  						test_static_swap(data, pipe,
> output);
> +					if (flags &
> TEST_INVALID_METADATA_SIZES)
> +						test_invalid_metadata_sizes(data,
> output);
>  				}
> 
>  				/* One pipe is enough */
> @@ -613,6 +641,10 @@ igt_main
>  	igt_subtest_with_dynamic("static-swap")
>  		test_hdr(&data, TEST_SWAP);
> 
> +	igt_describe("Tests invalid HDR metadata sizes");
> +	igt_subtest_with_dynamic("invalid-metadata-sizes")
> +		test_hdr(&data, TEST_INVALID_METADATA_SIZES);
> +
>  	igt_fixture {
>  		igt_display_fini(&data.display);
>  		close(data.fd);
> --
> 2.25.1

  parent reply	other threads:[~2023-02-02 18:32 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-26 10:38 [igt-dev] [PATCH i-g-t] tests/kms_hdr: Add negative test for invalid metadata sizes Swati Sharma
2022-12-27 13:30 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2022-12-27 16:54 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-02-02 18:31 ` Shankar, Uma [this message]
2023-02-08 15:33 ` [igt-dev] [PATCH i-g-t] " Kamil Konieczny

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=DM4PR11MB63606D3F16B6C2CE7DAFB1ECF4D69@DM4PR11MB6360.namprd11.prod.outlook.com \
    --to=uma.shankar@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=swati2.sharma@intel.com \
    /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.