[PATCH i-g-t v4 0/1] tests/intel/xe_exec_capture: Add xe_exec_capture test

Peter Senna Tschudin peter.senna at linux.intel.com
Thu Oct 24 04:43:04 UTC 2024


Dear Zhanjun Dong,

I tested bypassing the "Capture_source" field check on another Lunar Lake DUT:

$ sudo ./build/tests/xe_exec_capture
IGT-Version: 1.29-g5b8f06461 (x86_64) (Linux: 6.12.0-rc3-xe x86_64)
Using IGT_SRANDOM=1729744714 for randomisation
Opened device: /dev/dri/card0
Starting subtest: reset
Subtest reset: SUCCESS (34.455s)

Let me know how I can help you further.

Peter



On 23.10.2024 16:13, Dong, Zhanjun wrote:
> Dear Peter,
> 
> Thanks for testing the patch.
> Yes, the failure is due to I add "Capture_source" field check since v3.
> It actually find out a bug in my kmd code. Solution/Jira is working in progress.
> 
> If you want to skip this failure to continue the run, you can comment out this line like:
> diff --git a/tests/intel/xe_exec_capture.c b/tests/intel/xe_exec_capture.c
> index 3a8fa68f2..5fb50fe9a 100644
> --- a/tests/intel/xe_exec_capture.c
> +++ b/tests/intel/xe_exec_capture.c
> @@ -280,7 +280,7 @@ static void check_item_str(regex_t *regex, char **lines, const char *tag, const
> 
>  static void check_capture_out(regex_t *regex, char **lines)
>  {
> -       check_item_str(regex, lines, "Capture_source", "GuC");
> +       //check_item_str(regex, lines, "Capture_source", "GuC");
>         check_item_u64(regex, lines, "ACTHD", BASE_ADDRESS,
>                        BASE_ADDRESS + BATCH_DW_COUNT * sizeof(uint32_t));
>         check_item_u64(regex, lines, "RING_BBADDR", BASE_ADDRESS,
> 
> Regards,
> Zhanjun Dong
> 
> On 2024-10-23 1:18 a.m., Peter Senna Tschudin wrote:
>> Dear Zhanjun Dong,
>>
>> Thank you! I hit a failure while testing you code on a Lunar Lake machine:
>>
>>   (xe_exec_capture:2227) CRITICAL: Expected value:GuC, received:Manual
>>
>> Am I doing anything wrong? Here is the full output:
>>
>> $ sudo ./build/tests/xe_exec_capture
>> IGT-Version: 1.29-g210f35b54 (x86_64) (Linux: 6.12.0-rc2-xe x86_64)
>> Using IGT_SRANDOM=1729660344 for randomisation
>> Opened device: /dev/dri/card0
>> Starting subtest: reset
>> (xe_exec_capture:2227) CRITICAL: Test assertion failure function check_item_str, file ../tests/intel/xe_exec_capture.c:278:
>> (xe_exec_capture:2227) CRITICAL: Failed assertion: !strcmp(output, target)
>> (xe_exec_capture:2227) CRITICAL: Expected value:GuC, received:Manual
>> Stack trace:
>>    #0 ../lib/igt_core.c:2051 __igt_fail_assert()
>>    #1 [test_card+0x7dc]
>>    #2 ../tests/intel/xe_exec_capture.c:341 __igt_unique____real_main334()
>>    #3 ../tests/intel/xe_exec_capture.c:334 main()
>>    #4 ../sysdeps/nptl/libc_start_call_main.h:58 __libc_start_call_main()
>>    #5 ../csu/libc-start.c:128 __libc_start_main@@GLIBC_2.34()
>>    #6 [_start+0x25]
>> Subtest reset failed.
>> **** DEBUG ****
>> (xe_exec_capture:2227) igt_device_scan-DEBUG: Found 1 GPUs for vendor: intel
>> (xe_exec_capture:2227) DEBUG: Test requirement passed: xe > 0
>> (xe_exec_capture:2227) DEBUG: Running on engine class: 0 instance: 0
>> (xe_exec_capture:2227) DEBUG: Devcoredump found: /sys/class/drm/card0/device/devcoredump/data
>> (xe_exec_capture:2227) DEBUG: Compare Capture_source: Manual vs GuC
>> (xe_exec_capture:2227) CRITICAL: Test assertion failure function check_item_str, file ../tests/intel/xe_exec_capture.c:278:
>> (xe_exec_capture:2227) CRITICAL: Failed assertion: !strcmp(output, target)
>> (xe_exec_capture:2227) CRITICAL: Expected value:GuC, received:Manual
>> (xe_exec_capture:2227) igt_core-INFO: Stack trace:
>> (xe_exec_capture:2227) igt_core-INFO:   #0 ../lib/igt_core.c:2051 __igt_fail_assert()
>> (xe_exec_capture:2227) igt_core-INFO:   #1 [test_card+0x7dc]
>> (xe_exec_capture:2227) igt_core-INFO:   #2 ../tests/intel/xe_exec_capture.c:341 __igt_unique____real_main334()
>> (xe_exec_capture:2227) igt_core-INFO:   #3 ../tests/intel/xe_exec_capture.c:334 main()
>> (xe_exec_capture:2227) igt_core-INFO:   #4 ../sysdeps/nptl/libc_start_call_main.h:58 __libc_start_call_main()
>> (xe_exec_capture:2227) igt_core-INFO:   #5 ../csu/libc-start.c:128 __libc_start_main@@GLIBC_2.34()
>> (xe_exec_capture:2227) igt_core-INFO:   #6 [_start+0x25]
>> ****  END  ****
>> Subtest reset: FAIL (5.963s)
>>
>> Thanks!
>>
>>
>> On 22.10.2024 18:33, Zhanjun Dong wrote:
>>> Test with GuC reset, check if devcoredump register dump is within the
>>> range.
>>>
>>> Signed-off-by: Zhanjun Dong <zhanjun.dong at intel.com>
>>> Cc: Peter Senna Tschudin <peter.senna at intel.com>
>>> Cc: Kamil Konieczny <kamil.konieczny at linux.intel.com>
>>> Cc: Alan Previn <alan.previn.teres.alexis at intel.com>
>>>
>>> Changes from prior revs:
>>>   v4:-  Support runs on multiple GPU
>>>         Load all devcoredump content to buffer
>>>         Alloc line buffer dynamic vs static global memory
>>>         Changed to igt_assert_f to provide more info if failed
>>>   v3:-  Remove call to bash and awk
>>>         Add regular express parse
>>>         Detect devcoredump through card index
>>>         Add devcoredump removal check
>>>   v2:-  Fix CI.build error
>>>         Add multiple GPU card support
>>>
>>> Zhanjun Dong (1):
>>>    tests/intel/xe_exec_capture: Add xe_exec_capture test
>>>
>>>   tests/intel/xe_exec_capture.c | 365 ++++++++++++++++++++++++++++++++++
>>>   tests/meson.build             |   1 +
>>>   2 files changed, 366 insertions(+)
>>>   create mode 100644 tests/intel/xe_exec_capture.c
>>>
>>
> 



More information about the igt-dev mailing list