Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
To: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>,
	<igt-dev@lists.freedesktop.org>
Subject: Re: [igt-dev] [PATCH i-g-t 09/23] i915/perf: Use ARRAY_SIZE consistently for num_properties
Date: Tue, 6 Sep 2022 16:10:13 +0300	[thread overview]
Message-ID: <566796d2-e449-55be-7090-a62a15bcb641@intel.com> (raw)
In-Reply-To: <20220823183036.5270-10-umesh.nerlige.ramappa@intel.com>

On 23/08/2022 21:30, Umesh Nerlige Ramappa wrote:
> Replace all variations of calculating the num_properties with
> ARRAY_SIZE.
>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> ---
>   tests/i915/perf.c | 62 +++++++++++++++++++++++------------------------
>   1 file changed, 30 insertions(+), 32 deletions(-)
>
> diff --git a/tests/i915/perf.c b/tests/i915/perf.c
> index b61dd6e2..c120c898 100644
> --- a/tests/i915/perf.c
> +++ b/tests/i915/perf.c
> @@ -86,8 +86,6 @@ IGT_TEST_DESCRIPTION("Test the i915 perf metrics streaming interface");
>   
>   #define MAX_OA_BUF_SIZE (16 * 1024 * 1024)
>   
> -#define NUM_PROPERTIES(p) (sizeof(p) / (2 * sizeof(uint64_t)))
> -
>   struct accumulator {
>   #define MAX_RAW_OA_COUNTERS 62
>   	enum drm_i915_oa_format format;
> @@ -1069,7 +1067,7 @@ test_system_wide_paranoid(void)
>   		struct drm_i915_perf_open_param param = {
>   			.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   				I915_PERF_FLAG_FD_NONBLOCK,
> -			.num_properties = sizeof(properties) / 16,
> +			.num_properties = ARRAY_SIZE(properties) / 2,
>   			.properties_ptr = to_user_pointer(properties),
>   		};
>   
> @@ -1095,7 +1093,7 @@ test_system_wide_paranoid(void)
>   		struct drm_i915_perf_open_param param = {
>   			.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   				I915_PERF_FLAG_FD_NONBLOCK,
> -			.num_properties = sizeof(properties) / 16,
> +			.num_properties = ARRAY_SIZE(properties) / 2,
>   			.properties_ptr = to_user_pointer(properties),
>   		};
>   		write_u64_file("/proc/sys/dev/i915/perf_stream_paranoid", 0);
> @@ -1126,7 +1124,7 @@ test_invalid_open_flags(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = ~0, /* Undefined flag bits set! */
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1148,7 +1146,7 @@ test_invalid_oa_metric_set_id(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			I915_PERF_FLAG_FD_NONBLOCK,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1182,7 +1180,7 @@ test_invalid_oa_format_id(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			I915_PERF_FLAG_FD_NONBLOCK,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1214,7 +1212,7 @@ test_missing_sample_flags(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1354,7 +1352,7 @@ open_and_read_2_oa_reports(int format_id,
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1833,7 +1831,7 @@ test_invalid_oa_exponent(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -1868,7 +1866,7 @@ test_low_oa_exponent_permissions(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	uint64_t oa_period, oa_freq;
> @@ -1931,7 +1929,7 @@ test_per_context_mode_unprivileged(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -2007,8 +2005,8 @@ test_blocking(uint64_t requested_oa_period, bool set_kernel_hrtimer, uint64_t ke
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			I915_PERF_FLAG_DISABLED,
>   		.num_properties = set_kernel_hrtimer ?
> -				  NUM_PROPERTIES(properties) :
> -				  NUM_PROPERTIES(properties) - 1,
> +				  ARRAY_SIZE(properties) / 2 :
> +				  (ARRAY_SIZE(properties) / 2) - 1,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	uint8_t buf[1024 * 1024];
> @@ -2167,8 +2165,8 @@ test_polling(uint64_t requested_oa_period, bool set_kernel_hrtimer, uint64_t ker
>   			I915_PERF_FLAG_DISABLED |
>   			I915_PERF_FLAG_FD_NONBLOCK,
>   		.num_properties = set_kernel_hrtimer ?
> -				  NUM_PROPERTIES(properties) :
> -				  NUM_PROPERTIES(properties) - 1,
> +				  ARRAY_SIZE(properties) / 2 :
> +				  (ARRAY_SIZE(properties) / 2) - 1,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	uint8_t buf[1024 * 1024];
> @@ -2358,7 +2356,7 @@ static void test_polling_small_buf(void)
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			I915_PERF_FLAG_DISABLED |
>   			I915_PERF_FLAG_FD_NONBLOCK,
> -		.num_properties = NUM_PROPERTIES(properties),
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	uint32_t test_duration = 80 * 1000 * 1000;
> @@ -2458,7 +2456,7 @@ gen12_test_oa_tlb_invalidate(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			I915_PERF_FLAG_DISABLED,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	int num_reports1, num_reports2, num_expected_reports;
> @@ -2649,7 +2647,7 @@ test_non_zero_reason(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	struct drm_i915_perf_record_header *header;
> @@ -2734,7 +2732,7 @@ test_enable_disable(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			 I915_PERF_FLAG_DISABLED, /* Verify we start disabled */
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	int buf_size = 65536 * (256 + sizeof(struct drm_i915_perf_record_header));
> @@ -2883,7 +2881,7 @@ test_short_reads(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	size_t record_size = 256 + sizeof(struct drm_i915_perf_record_header);
> @@ -2975,7 +2973,7 @@ test_non_sampling_read_error(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	int ret;
> @@ -3011,7 +3009,7 @@ test_disabled_read_error(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			 I915_PERF_FLAG_DISABLED, /* XXX: open disabled */
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	uint32_t oa_report0[64];
> @@ -3168,7 +3166,7 @@ test_mi_rpc(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	struct buf_ops *bops = buf_ops_create(drm_fd);
> @@ -3271,7 +3269,7 @@ hsw_test_single_ctx_counters(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   
> @@ -4253,7 +4251,7 @@ test_rc6_disable(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	unsigned long rc6_start, rc6_end, rc6_enabled;
> @@ -4309,7 +4307,7 @@ test_stress_open_close(void)
>   		struct drm_i915_perf_open_param param = {
>   			.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   			         I915_PERF_FLAG_DISABLED, /* XXX: open disabled */
> -			.num_properties = NUM_PROPERTIES(properties),
> +			.num_properties = ARRAY_SIZE(properties) / 2,
>   			.properties_ptr = to_user_pointer(properties),
>   		};
>   
> @@ -4405,8 +4403,8 @@ test_global_sseu_config_invalid(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   		I915_PERF_FLAG_DISABLED, /* XXX: open disabled */
> -		.num_properties = NUM_PROPERTIES(properties),
> -			.properties_ptr = to_user_pointer(properties),
> +		.num_properties = ARRAY_SIZE(properties) / 2,
> +		.properties_ptr = to_user_pointer(properties),
>   	};
>   
>   	memset(&default_sseu, 0, sizeof(default_sseu));
> @@ -4480,8 +4478,8 @@ test_global_sseu_config(void)
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC |
>   		I915_PERF_FLAG_DISABLED, /* XXX: open disabled */
> -		.num_properties = NUM_PROPERTIES(properties),
> -			.properties_ptr = to_user_pointer(properties),
> +		.num_properties = ARRAY_SIZE(properties) / 2,
> +		.properties_ptr = to_user_pointer(properties),
>   	};
>   
>   	memset(&default_sseu, 0, sizeof(default_sseu));
> @@ -4913,7 +4911,7 @@ test_i915_ref_count(void)
>   	};
>   	struct drm_i915_perf_open_param param = {
>   		.flags = I915_PERF_FLAG_FD_CLOEXEC,
> -		.num_properties = sizeof(properties) / 16,
> +		.num_properties = ARRAY_SIZE(properties) / 2,
>   		.properties_ptr = to_user_pointer(properties),
>   	};
>   	unsigned baseline, ref_count0, ref_count1;


  reply	other threads:[~2022-09-06 13:10 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-23 18:30 [igt-dev] [PATCH i-g-t 00/23] Add DG2 OA test Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 01/23] i915/perf: Check regularly if we are done reading reports Umesh Nerlige Ramappa
2022-09-06 12:49   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 02/23] i915/perf: Fix OA short_reads test Umesh Nerlige Ramappa
2022-09-06 12:50   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 03/23] i915/perf: Check return value from getparam Umesh Nerlige Ramappa
2022-09-06 12:52   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 04/23] i915/perf: Limit sseu-config tests for gen11 Umesh Nerlige Ramappa
2022-09-06 12:53   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 05/23] i915/perf: Bump timestamp tolerance for DG1 Umesh Nerlige Ramappa
2022-09-06 13:06   ` Lionel Landwerlin
2022-09-06 19:30     ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 06/23] i915/perf: Account for OA sampling interval in polling test Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 07/23] i915/perf: Add support for 64-bit counters Umesh Nerlige Ramappa
2022-09-06 13:05   ` Lionel Landwerlin
2022-09-06 19:37     ` Umesh Nerlige Ramappa
2022-09-06 20:02       ` Lionel Landwerlin
2022-09-06 20:58         ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 08/23] i915/perf: Define OA report types Umesh Nerlige Ramappa
2022-09-06 13:08   ` Lionel Landwerlin
2022-09-06 19:28     ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 09/23] i915/perf: Use ARRAY_SIZE consistently for num_properties Umesh Nerlige Ramappa
2022-09-06 13:10   ` Lionel Landwerlin [this message]
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 10/23] i915/perf: Use gt in perf tests and lib Umesh Nerlige Ramappa
2022-09-06 13:13   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 11/23] i915/perf: Explicitly state rendercopy needs for a test Umesh Nerlige Ramappa
2022-09-06 13:26   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 12/23] i915/perf: Skip tests that use rendercopy Umesh Nerlige Ramappa
2022-09-06 13:28   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 13/23] i915/perf: Add OA formats for DG2 Umesh Nerlige Ramappa
2022-09-06 13:30   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 14/23] i915/perf: Add a test for non-power-of-2 oa reports Umesh Nerlige Ramappa
2022-09-06 14:08   ` Lionel Landwerlin
2022-09-20 19:28     ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 15/23] i915/perf: Fix CS timestamp vs OA timstamp mismatch Umesh Nerlige Ramappa
2022-09-06 13:36   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 16/23] i915/perf: Treat ticks as 64 bit Umesh Nerlige Ramappa
2022-09-06 14:08   ` Lionel Landwerlin
2022-09-06 18:56     ` Umesh Nerlige Ramappa
2022-09-06 19:06       ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 17/23] i915/perf: Treat timestamp as 64 bit value Umesh Nerlige Ramappa
2022-09-06 14:16   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 18/23] i915/perf: Fix DG2 A0 report header Umesh Nerlige Ramappa
2022-09-06 14:17   ` Lionel Landwerlin
2022-09-06 18:37     ` Umesh Nerlige Ramappa
2022-09-06 18:54       ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 19/23] i915/perf: Wait longer for rc6 residency in DG2 Umesh Nerlige Ramappa
2022-09-06 14:18   ` Lionel Landwerlin
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 20/23] lib/i915/perf: implement report accumulation for new format Umesh Nerlige Ramappa
2022-09-06 14:21   ` Lionel Landwerlin
2022-09-20 20:02   ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 21/23] lib/i915/perf: fixup conversion script for XEHPSDV Umesh Nerlige Ramappa
2022-09-20 20:03   ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 22/23] lib/i915/perf: make warning message more helpful Umesh Nerlige Ramappa
2022-09-20 20:04   ` Umesh Nerlige Ramappa
2022-08-23 18:30 ` [igt-dev] [PATCH i-g-t 23/23] lib/i915/perf: Add DG2 metrics Umesh Nerlige Ramappa
2022-09-20 23:11   ` Umesh Nerlige Ramappa
2022-08-23 20:30 ` [igt-dev] [PATCH i-g-t 18/23] i915/perf: Fix DG2 A0 report header Umesh Nerlige Ramappa
2022-09-06 14:23   ` Lionel Landwerlin
2022-09-06 18:33     ` Umesh Nerlige Ramappa
2022-08-23 21:00 ` [igt-dev] ✗ Fi.CI.BUILD: failure for Add DG2 OA test Patchwork
2022-08-24  9:33 ` [igt-dev] ✗ Fi.CI.BUILD: failure for Add DG2 OA test (rev2) Patchwork
2022-08-24  9:58   ` Petri Latvala
2022-08-24 13:08 ` [igt-dev] ✓ Fi.CI.BAT: success for Add DG2 OA test (rev3) Patchwork
2022-08-25 20:33 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2022-08-22 23:56 [igt-dev] [PATCH i-g-t 00/23] Add DG2 OA test Umesh Nerlige Ramappa
2022-08-22 23:56 ` [igt-dev] [PATCH i-g-t 09/23] i915/perf: Use ARRAY_SIZE consistently for num_properties Umesh Nerlige Ramappa

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=566796d2-e449-55be-7090-a62a15bcb641@intel.com \
    --to=lionel.g.landwerlin@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=umesh.nerlige.ramappa@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox