[PATCH i-g-t] tests/intel/oa: Check exec_queue is usable after closing OA stream
Kamil Konieczny
kamil.konieczny at linux.intel.com
Mon Oct 14 14:19:13 UTC 2024
Hi Ashutosh,
On 2024-09-20 at 17:45:06 -0700, Ashutosh Dixit wrote:
please fix subject:
tests/intel/oa: Check exec_queue is usable after closing OA stream
should be:
tests/intel/xe_oa: Check exec_queue is usable after closing OA stream
> Add a test case to verify that batch buffers submitted on an exec_queue,
^^^^^^^^^^^^^^^
imho here:
Add repeated verification for ...
or:
Repeat twice a verification for usablility of batch buffers....
> after closing the OA stream, do indeed complete. This test is in related to
> https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/2821 where this was
> first noticed.
>
> Signed-off-by: Ashutosh Dixit <ashutosh.dixit at intel.com>
> ---
> tests/intel/xe_oa.c | 23 ++++++++++++++++++++++-
> 1 file changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
> index 506646789c..eb19fdec97 100644
> --- a/tests/intel/xe_oa.c
> +++ b/tests/intel/xe_oa.c
> @@ -3018,13 +3018,34 @@ test_mi_rpc(struct drm_xe_engine_class_instance *hwe)
> igt_assert_neq(report32[format.b_off >> 2], 0x80808080);
> igt_assert_eq(report32[format_size_32], 0x80808080);
>
> + intel_buf_unmap(buf);
> + __perf_close(stream_fd);
> +
> + /*
> + * Re-do MI_RPC after closing perf stream, and check batch buffers
> + * submitted on exec_queue still complete
> + */
Instead of copy-paste, wouldn't it be better to write a function
and call it twice here?
Regards,
Kamil
> + buf_map(drm_fd, buf, true);
> + memset(buf->ptr, 0x80, 4096);
> + intel_buf_unmap(buf);
> +
> + intel_bb_flush_render(ibb);
> + intel_bb_sync(ibb);
> +
> + buf_map(drm_fd, buf, false);
> + report32 = buf->ptr;
> + format_size_32 = format.size >> 2;
> + dump_report(report32, format_size_32, "mi-rpc");
> +
> + igt_assert_eq(report32[0], 0x80808080);
> + igt_assert_eq(oa_timestamp(report32, test_set->perf_oa_format), 0x80808080);
> +
> intel_buf_unmap(buf);
> intel_buf_destroy(buf);
> intel_bb_destroy(ibb);
> xe_exec_queue_destroy(drm_fd, ctx_id);
> xe_vm_destroy(drm_fd, vm);
> buf_ops_destroy(bops);
> - __perf_close(stream_fd);
> }
>
> static void
> --
> 2.41.0
>
More information about the igt-dev
mailing list