All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dixit, Ashutosh" <ashutosh.dixit@intel.com>
To: Harish Chegondi <harish.chegondi@intel.com>
Cc: <igt-dev@lists.freedesktop.org>
Subject: Re: [PATCH i-g-t v2 1/1] tests/intel/xe_eu_stall: Add invalid input tests for EU stall sampling
Date: Thu, 27 Mar 2025 20:03:06 -0700	[thread overview]
Message-ID: <85h63dsvpx.wl-ashutosh.dixit@intel.com> (raw)
In-Reply-To: <f5fe98bd2c3ed3a954e8a5c0c8a11b58174d6a7b.1743124940.git.harish.chegondi@intel.com>

On Thu, 27 Mar 2025 18:23:19 -0700, Harish Chegondi wrote:
>
> Add tests to verify that invalid inputs fail the tests
>
> v2: Fix alignment, change SUBSLICES to XECORES, remove unnecessary brackets

Looks good now, thanks for the changes:

Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>

>
> Signed-off-by: Harish Chegondi <harish.chegondi@intel.com>
> ---
>  tests/intel/xe_eu_stall.c | 59 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 59 insertions(+)
>
> diff --git a/tests/intel/xe_eu_stall.c b/tests/intel/xe_eu_stall.c
> index 964bb7c91..da9bd7843 100644
> --- a/tests/intel/xe_eu_stall.c
> +++ b/tests/intel/xe_eu_stall.c
> @@ -19,6 +19,15 @@
>   *
>   * SUBTEST: unprivileged-access
>   * Description: Verify unprivileged open of a EU stall data stream fd
> + *
> + * SUBTEST: invalid-gt-id
> + * Description: Verify that invalid input GT ID fails the test
> + *
> + * SUBTEST: invalid-sampling-rate
> + * Description: Verify that invalid input sampling rate fails the test
> + *
> + * SUBTEST: invalid-event-report-count
> + * Description: Verify that invalid input event report count fails the test
>   */
>
>  #include <fcntl.h>
> @@ -33,6 +42,9 @@
>
>  #define OBSERVATION_PARANOID	"/proc/sys/dev/xe/observation_paranoid"
>
> +#define NUM_DATA_ROWS(size)	((size) >> 6)
> +
> +#define MAX_XECORES		64
>  #define NUM_ITERS_GPGPU_FILL	100
>  #define DEFAULT_NUM_REPORTS	1
>  #define DEFAULT_SAMPLE_RATE	(251 * 4)
> @@ -283,6 +295,41 @@ static void set_fd_flags(int fd, int flags)
>	igt_assert_eq(0, fcntl(fd, F_SETFL, old | flags));
>  }
>
> +/*
> + * Verify that tests with invalid arguments fail.
> + */
> +static void test_invalid_arguments(int drm_fd, uint8_t gt_id, uint32_t rate, uint32_t num_reports)
> +{
> +	uint64_t properties[] = {
> +		DRM_XE_EU_STALL_PROP_GT_ID, gt_id,
> +		DRM_XE_EU_STALL_PROP_SAMPLE_RATE, rate,
> +		DRM_XE_EU_STALL_PROP_WAIT_NUM_REPORTS, num_reports,
> +	};
> +
> +	struct xe_eu_stall_open_prop props = {
> +		.num_properties = ARRAY_SIZE(properties) / 2,
> +		.properties_ptr = to_user_pointer(properties),
> +	};
> +
> +	xe_eu_stall_ioctl_err(drm_fd, DRM_XE_OBSERVATION_OP_STREAM_OPEN, &props, EINVAL);
> +}
> +
> +static void test_invalid_gt_id(int fd)
> +{
> +	test_invalid_arguments(fd, 255, DEFAULT_SAMPLE_RATE, DEFAULT_NUM_REPORTS);
> +}
> +
> +static void test_invalid_sampling_rate(int fd)
> +{
> +	test_invalid_arguments(fd, 0, 251 * 10, DEFAULT_NUM_REPORTS);
> +}
> +
> +static void test_invalid_event_report_count(int fd)
> +{
> +	test_invalid_arguments(fd, 0, DEFAULT_SAMPLE_RATE,
> +			       NUM_DATA_ROWS(512 * 1024) * MAX_XECORES + 1);
> +}
> +
>  static inline void enable_paranoid(void)
>  {
>	write_u64_file(OBSERVATION_PARANOID, 1);
> @@ -615,6 +662,18 @@ igt_main_args("e:g:o:r:u:w:", long_options, help_str, opt_handler, NULL)
>	igt_subtest("unprivileged-access")
>		test_non_privileged_access(drm_fd);
>
> +	igt_describe("Verify that invalid input GT ID fails the test");
> +	igt_subtest("invalid-gt-id")
> +		test_invalid_gt_id(drm_fd);
> +
> +	igt_describe("Verify that invalid input sampling rate fails the test");
> +	igt_subtest("invalid-sampling-rate")
> +		test_invalid_sampling_rate(drm_fd);
> +
> +	igt_describe("Verify that invalid input event report count fails the test");
> +	igt_subtest("invalid-event-report-count")
> +		test_invalid_event_report_count(drm_fd);
> +
>	igt_fixture {
>		if (output)
>			fclose(output);
> --
> 2.48.1
>

  reply	other threads:[~2025-03-28  3:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-28  1:23 [PATCH i-g-t v2 1/1] tests/intel/xe_eu_stall: Add invalid input tests for EU stall sampling Harish Chegondi
2025-03-28  3:03 ` Dixit, Ashutosh [this message]
2025-03-28  3:53 ` ✓ Xe.CI.BAT: success for series starting with [i-g-t,v2,1/1] " Patchwork
2025-03-28  4:14 ` ✓ i915.CI.BAT: " Patchwork
2025-03-28 16:44 ` ✗ Xe.CI.Full: failure " Patchwork
2025-04-06 17:41 ` Patchwork

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=85h63dsvpx.wl-ashutosh.dixit@intel.com \
    --to=ashutosh.dixit@intel.com \
    --cc=harish.chegondi@intel.com \
    --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.