- Mar 21, 2025
-
-
non-zero-reason OA test has a hardcoded user buffer size for any kernel OA buffer. This makes the test act differently for different sizes. Thus make the user buffer size to be in line with the kernel OA buffer being allocated. v2: Address operator precedence (Ashutosh) Signed-off-by:
Sai Teja Pottumuttu <sai.teja.pottumuttu@intel.com> Reviewed-by:
Ashutosh Dixit <ashutosh.dixit@intel.com>
-
- Mar 19, 2025
-
-
Zbigniew Kempczyński authored
For multi-process scenario intel-allocator is dedicated thread which handles clients (children processes) allocations. Main thread which spawns children may hit point of time where allocator thread locked some mutex. One of it is log_buffer_mutex used in igt_log(). Children which would try to call igt_info/warn/debug() family will stuck as this mutex is already locked. Reinitialize this mutex in igt_fork() to avoid deadlocks in allocator scenarios. Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Reviewed-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com> Link: https://lore.kernel.org/r/20250317113146.560156-1-zbigniew.kempczynski@intel.com Signed-off-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
-
- Mar 16, 2025
-
-
Ashutosh Dixit authored
OA sync tests need not be limited to render engine only. Extend them to use any engine using __for_one_hwe_in_oag macro instead. Signed-off-by:
Ashutosh Dixit <ashutosh.dixit@intel.com> Reviewed-by:
Sai Teja Pottumuttu <sai.teja.pottumuttu@intel.com>
-
Ashutosh Dixit authored
On platforms without render engines, __for_one_render_engine is an infinite loop. Fix and simplify the macro to reduce chance of such errors in the future. v2: Use pre-existing xe_find_engine_by_class() Signed-off-by:
Ashutosh Dixit <ashutosh.dixit@intel.com> Reviewed-by:
Sai Teja Pottumuttu <sai.teja.pottumuttu@intel.com>
-
- Mar 14, 2025
-
-
Add missing include file to fix cross-compilation errors: ../tests/amdgpu/amd_hotplug.c: In function is_system_s2idle: ../tests/amdgpu/amd_hotplug.c:110:7: error: implicit declaration of function open; did you mean popen? [-Werror=implicit-function-declaration] fd = open(MEM_SLEEP_PATH, O_RDONLY); ^~~~ popen ../tests/amdgpu/amd_hotplug.c:110:7: warning: nested extern declaration of open [-Wnested-externs] ../tests/amdgpu/amd_hotplug.c:110:28: error: O_RDONLY undeclared (first use in this function); did you mean STA_RONLY? fd = open(MEM_SLEEP_PATH, O_RDONLY); ^~~~~~~~ STA_RONLY Fixes: 6796e79a ("tests/amdgpu/amd_hotplug: Check the suspend state after resume") Signed-off-by:
Alex Hung <alex.hung@amd.com> Reviewed-by:
Tom Chung <chiahsuan.chung@amd.com>
-
- Mar 13, 2025
-
-
[Why & How] Check the last hardware sleep state after resume to make sure last suspend really reached hardware sleep state. Make sure to enable the suspend related settings in kernel config Linux Kernel Configuration └─>Power management and ACPI options Suspend to RAM and standby ACPI (Advanced Configuration and Power Interface) Support Signed-off-by:
Tom Chung <chiahsuan.chung@amd.com> Reviewed-by:
Alex Hung <alex.hung@amd.com>
-
Kamil Konieczny authored
Acked-by: Petri Latvala <adrinael@adrinael.net> #irc Acked-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com>
-
Dominik Karol Piątkowski authored
Add a test that sends SIGINT to the debugger thread with random timing and checks if nothing breaks, exercising the scenario multiple times. v2: Count correctly timed SIGINTs and assert that they happened (Mika) v3: Move loop_count increment outside macro (Mika) Signed-off-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Dominik Karol Piątkowski authored
After `token_signal(c->p_in, CLIENT_STOP, c->pid)`, the client is expected to end its work and exit. By the time the waitpid() is called, the client process may be gone already, resulting in a failed assert. Fix it by skipping the assert in case of errno being ECHILD, meaning the process already exited. Signed-off-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Dominik Karol Piątkowski authored
Due to the fact that `pthread_kill(thread, SIGINT)` results in SIGINTing all of the threads - including main thread - by default, testcases that send SIGINT to debugger thread are crashing. Introduce SIGINT signal handler for debugger thread to fix this. v2: Initialize sigaction (Mika) Signed-off-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Reviewed-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
These tests rely on FBC is enabled, some FIFO underruns can disable FBC and can trigger asserts. In case if such asserts are triggered, we end up not clearing the used fbs and crcs. Use common functions to prepare and clear igt test parameters as required for each tests Signed-off-by:
Vinod Govindapillai <vinod.govindapillai@intel.com> Reviewed-by:
Santhosh Reddy Guddati <santhosh.reddy.guddati@intel.com>
-
Francois Dugast authored
Ensure 64K alignment to be consistent with xehp and xehpc. Especially the binding table offset was changed to 0x10000 but this had not been taken into account for xelpg, so fix it. Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by:
Francois Dugast <francois.dugast@intel.com>
-
- Mar 12, 2025
-
-
Lucas De Marchi authored
The fact that snd_hda_* is loaded doesn't mean i915 is. It used to be the case that loading e.g. snd_hda_intel would load i915 because of a request_module("i915") in the kernel. However that changed in commit e6d0c13e9f46 ("ALSA: hda: i915: Remove extra argument from snd_hdac_i915_init"). Drop the snd_* modules from unwanted_drivers. Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Closes: drm/i915/kernel#13896 Link: https://lore.kernel.org/r/20250311195339.1206647-1-lucas.demarchi@intel.com Signed-off-by:
Lucas De Marchi <lucas.demarchi@intel.com>
-
Marcin Bernatowicz authored
Replace igt_require with igt_assert to enforce that num_engines is nonzero rather than skipping the test. This ensures the test fails explicitly if engine utilization data is missing. Cc: Jakub Kolakowski <jakub1.kolakowski@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Cc: Lukasz Laguna <lukasz.laguna@intel.com> Cc: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by:
Jakub Kolakowski <jakub1.kolakowski@intel.com>
-
Marcin Bernatowicz authored
Introduce require_engine_utilization_data() to verify utilization data availability in each utilization subtest. Suggested-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Cc: Lukasz Laguna <lukasz.laguna@intel.com> Cc: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by:
Jakub Kolakowski <jakub1.kolakowski@intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com>
-
- Mar 11, 2025
-
-
KunalJoshi95 authored
fix assert for igt_find_all_mst_output_in_topology as it changed to int from bool Fixes: 983ffca5 Signed-off-by:
Kunal Joshi <kunal1.joshi@intel.com> Reviewed-by:
Jeevan B <jeevan.b@intel.com>
-
KunalJoshi95 authored
Retraining can be done on enabled output. Fix test to do modeset before retraining. v2: remove redundant modeset (Jeevan) Fixes: 983ffca5 Signed-off-by:
Kunal Joshi <kunal1.joshi@intel.com> Reviewed-by:
Jeevan B <jeevan.b@intel.com>
-
- Mar 10, 2025
-
-
Karthik Poosa authored
Change sub-category of below tests from Power management tests to below: * tests/intel/xe_gt_freq.c to Frequency management tests. * tests/intel/xe_pm.c to Suspend-resume tests. * tests/intel/xe_pm_residency.c to GT C-states and idle residency tests. v2: Modify sub-category as per review comments. (Rodrigo) Signed-off-by:
Karthik Poosa <karthik.poosa@intel.com> Link: https://lore.kernel.org/r/20250228050757.2081043-1-karthik.poosa@intel.com Reviewed-by:
Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by:
Rodrigo Vivi <rodrigo.vivi@intel.com>
-
[Why] The Replay IGT test need to communicate with eDP via drm_dp_aux* Currently the test will report FAIL if no DRM DP AUX Interface found on the system. [How] Skip the test if no DRM DP AUX Interface on the system and info the tester the DRM DP AUX Interface need to be enabled in kernel config to run the test. The following setting in kernel config needs to be enabled for amd_replay test. Linux Kernel Configuration └─>Device Drivers └─>Graphics support └─>Direct Rendering Manager └─>DRM DP AUX Interface Signed-off-by:
Tom Chung <chiahsuan.chung@amd.com> Reviewed-by:
Alex Hung <alex.hung@amd.com>
-
Swati2 Sharma authored
'Functionality' solely depends upon developer's interpretation and 'Test category' is not used. Let's remove them from the kms tests documentation so that documentation can be made precise which is easy to maintain. v2: -rebase Signed-off-by:
Swati Sharma <swati2.sharma@intel.com> Acked-by:
Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by:
Katarzyna Piecielska <katarzyna.piecielska@intel.com> Reviewed-by:
Karthik B S <karthik.b.s@intel.com>
-
Kamil Konieczny authored
Sometimes an error happens in kernel or in test that leaves output files in corrupted or incorrect state. While runner or resume will just move on to executing next test, when generating results it could end up with no results.json Try processing outputs a little more persistently and use any output file left there, even if only dmesg.txt. Also, when no useful output files were present, instead of breaking out add notrun. Inform about processing results for each test so a problem could be spotted more easily. v2: removed ')' from 'notrun\n)' (Kamil) using bool var, added more prints about errors (Ryszard) v3: reused open_for_reading, removed bool var (Krzysztof) closing only positive fds[] in close_outputs(), checking file sizes also if all opens succeeded (Kamil) v4: reverting to v2 and addresing review comments (Krzysztof) closing only already opened file, drop early return when empty output files as this changes run status (Kamil) v5: reverting to returning fals...
-
Updates scripts/run-tests.sh to include the following options: -f: enable igt_facts on igt_runner -K <mode>: Linux Kernel kmemleak reports - once: run a kmemleak scan after all tests - each: run a kmemleak scan after each test These options are simply relayed to igt_runner. Cc: vitaly.prosyak@amd.com Cc: christian.koenig@amd.com Cc: alexander.deucher@amd.com Cc: jesse.zhang@amd.com Cc: harry.wentland@amd.com Cc: zbigniew.kempczynski@intel.com Cc: kamil.konieczny@linux.intel.com Cc: ryszard.knop@intel.com Cc: lucas.demarchi@intel.com Cc: katarzyna.piecielska@intel.com Reviewed-by:
Vitaly Prosyak <vitaly.prosyak@amd.com> Signed-off-by:
Peter Senna Tschudin <peter.senna@linux.intel.com>
-
This patch modifies igt_runner to support runner_kmemleak() calls. By default, kmemleak scanning is disabled, so new command-line options are introduced to enable it: * -k, -k<option>, --kmemleak, --kmemleak=<option> The available options are: * once: Do single kmemleak scan after last test in the test list * each: Perform a kmemleak scan after each test completes By default, kmemleak scanning is disabled. If any kmemleaks are detected, they will be saved in the igt_runner results directory under kmemleak.txt. Additionally, this patch updates serialize_settings() and read_settings_from_file() to persist igt_runner settings across runs. This allows settings to be saved when running igt_runner --dry-run and later restored when executing igt_resume. The unit tests for igt_runner have been extended to verify: * Kmemleak scans are disabled by default * Kmemleak scans can be enabled via command-line arguments * The kmemleak setting is correctly saved to and restored from disk To test the new -k command-line option, this patch appends "--overwrite" to *argv[] in runner_test.c to expand the argument array. This approach avoids a major refactor of how *argv[] is defined across the file while keeping the changes isolated to unit testing. Since this only affects tests, there is no downstream impact. Cc: vitaly.prosyak@amd.com Cc: christian.koenig@amd.com Cc: alexander.deucher@amd.com Cc: jesse.zhang@amd.com Cc: harry.wentland@amd.com Cc: zbigniew.kempczynski@intel.com Cc: kamil.konieczny@linux.intel.com Cc: ryszard.knop@intel.com Cc: lucas.demarchi@intel.com Cc: katarzyna.piecielska@intel.com Reviewed-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by:
Jonathan Cavitt <jonathan.cavitt@intel.com> Reviewed-by:
Vitaly Prosyak <vitaly.prosyak@amd.com> Signed-off-by:
Peter Senna Tschudin <peter.senna@linux.intel.com>
-
Adds a simple library for interacting with kmemleak and add unit testing for the library. There are two modes intended to integrate with igt_runner: - once: collect kmemleaks after all test completed - each: collect kmemleaks after eachb test completes Cc: vitaly.prosyak@amd.com Cc: christian.koenig@amd.com Cc: alexander.deucher@amd.com Cc: jesse.zhang@amd.com Cc: harry.wentland@amd.com Cc: zbigniew.kempczynski@intel.com Cc: kamil.konieczny@linux.intel.com Cc: ryszard.knop@intel.com Cc: lucas.demarchi@intel.com Cc: katarzyna.piecielska@intel.com Reviewed-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by:
Jonathan Cavitt <jonathan.cavitt@intel.com> Reviewed-by:
Vitaly Prosyak <vitaly.prosyak@amd.com> Signed-off-by:
Peter Senna Tschudin <peter.senna@linux.intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com>
-
Even if FBC is enabled and test is successfull, using warn level to print the info will make the CI treat this as a failure. In case FBC is not enabled, the assert will be triggered and print the error case. Signed-off-by:
Vinod Govindapillai <vinod.govindapillai@intel.com> Reviewed-by:
Jeevan B <jeevan.b@intel.com>
-
- Mar 07, 2025
-
-
oa-formats test need not be limited to render engine only. Extend it to use any engine using __for_one_hwe_in_oag macro instead. Signed-off-by:
Sai Teja Pottumuttu <sai.teja.pottumuttu@intel.com> Reviewed-by:
Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
-
Use the fault injection infrastructure to make targeted internal KMD functions fail when executing xe_exec_queue_create_ioctl() so that more code paths are tested, such as error handling and unwinding. include xe_exec_queue_create_bind only for VM_BIND engine class. xe_exec_queue_destroy_ioctl() and xe_exec_queue_get_property_ioctl() are not considered as there is no unwinding code to test with fault injection. v2: Added separate case for vm_bind engine class Signed-off-by:
Pravalika Gurram <pravalika.gurram@intel.com> Reviewed-by:
Priyanka Dandamudi <priyanka.dandamudi@intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com>
-
- Mar 06, 2025
-
-
Commit d7bccece44dd ("tests/intel/kms_dp_link_training: Restrict to Intel GPUs") missed adding DRIVER_XE. Ensure both DRIVER_INTEL and DRIVER_XE are set to properly restrict the test to Intel GPUs. Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Cc: Kunal Joshi <kunal1.joshi@intel.com> Cc: Arun R Murthy <arun.r.murthy@intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com>
-
Use DRIVER_INTEL instead of DRIVER_ANY to avoid assertions on non-Intel hardware. In few of our CI runs test opened any DRM driver and failed because it was not Intel. Cc: Kunal Joshi <kunal1.joshi@intel.com> Cc: Arun R Murthy <arun.r.murthy@intel.com> Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by:
Kunal Joshi <kunal1.joshi@intel.com>
-
The test only checks igt_display_has_format_mod() before deciding to test a specific format. But that doesn't mean the actual plane supports that format. Also check for that once we know which plane to use. Should turn the fp16 failures into skips on IVB because it doesn't have fp16 support on the primary plane. Signed-off-by:
Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
- Mar 05, 2025
-
-
unerlige authored
Simulation runs are slow, so account for that by modifying the scope of the tests. - Set parameters specific to simulation during init. - Skip tests that are heavily reliant on timing and that only test SW functionality. Signed-off-by:
Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Reviewed-by:
Ashutosh Dixit <ashutosh.dixit@intel.com>
-
unerlige authored
Internally the test is running a loop of 1000 iterations and calling read in each iteration. The test is expecting a single read call to return at least two reports. If two reports are not read, the logic continues to the next iteration. This can easily fail if each read just returns one report. In essence, many reports are available, but the logic causes test to fail. Instead, count and use every report read when waiting for two reports to be available. Signed-off-by:
Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Reviewed-by:
Ashutosh Dixit <ashutosh.dixit@intel.com>
-
Marcin Bernatowicz authored
If the device is a Virtual Function, skip certain devcoredump validation steps that are not applicable in this context. These changes align with kernel updates introduced in: Link: https://patchwork.freedesktop.org/patch/msgid/20241022010116.342240-2-zhanjun.dong@intel.com Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by:
Zhanjun Dong <zhanjun.dong@intel.com> Cc: Lukasz Laguna <lukasz.laguna@intel.com> Cc: Michał Wajdeczko <michal.wajdeczko@intel.com> Cc: Zhanjun Dong <zhanjun.dong@intel.com>
-
Marcin Bernatowicz authored
Introduce intel_is_vf_device helper to determine whether a given device is a Virtual Function (VF). The function reads the VF_CAPABILITY_REGISTER and checks if the least significant bit is set to identify VF device. Signed-off-by:
Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by:
Lukasz Laguna <lukasz.laguna@intel.com> Cc: Adam Miszczak <adam.miszczak@linux.intel.com> Cc: Jakub Kolakowski <jakub1.kolakowski@intel.com> Cc: Lukasz Laguna <lukasz.laguna@intel.com> Cc: Michał Wajdeczko <michal.wajdeczko@intel.com> Cc: Michał Winiarski <michal.winiarski@intel.com> Cc: Piotr Piórkowski <piotr.piorkowski@intel.com> Cc: Satyanarayana K V P <satyanarayana.k.v.p@intel.com> Cc: Tomasz Lis <tomasz.lis@intel.com>
-
Christoph Manszewski authored
Eudebug is not supported in PF mode with VFs enabled and in VF mode. Provide subtests to ensure that: 1. enabling eudebug is not permitted in PF mode with VFs enabled 2. eudebug sysfs toggle is not available in VF mode 3. enabling VFs is not permitted when eudebug is enabled Reviewed-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Reviewed-by:
Dominik Grzegorzek <dominik.grzegorzek@intel.com> Link: https://lore.kernel.org/r/20250304163227.49986-3-christoph.manszewski@intel.com Signed-off-by:
Christoph Manszewski <christoph.manszewski@intel.com>
-
Christoph Manszewski authored
Export __xe_eudebug_enable_getset to make it possible to catch error code in tests. Reviewed-by:
Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com> Link: https://lore.kernel.org/r/20250304163227.49986-2-christoph.manszewski@intel.com Signed-off-by:
Christoph Manszewski <christoph.manszewski@intel.com>
-
During making changes in Mega feature <-> Sub-category pairs I've noticed few places were test documentation formatting is different than pattern: /** * TEST: * Category: * Mega feature: * Sub-category: * Functionality: * Test category: * * SUBTEST: * Functionality: * Description: */ So let's align Xe tests to this order. Also there is no need to duplicate documentation fields in subtests if Category/Mega feature/Sub-category/Functionality are the same for subtest as for whole binary. Last thing is to make sure test description is properly adjusted. Signed-off-by:
Katarzyna Piecielska <katarzyna.piecielska@intel.com> Reviewed-by:
Aditya Chauhan <aditya.chauhan@intel.com>
-
Our documentation scripts need to have unique pairs 'Mega feature - Sub-category', e.g. example below is causing warnings: Mega feature: WMTP Sub-category: CMD submission && Mega feature: General Core features Sub-category: CMD submission There is a need to make sure that pairs are unique, so let's make change in xe_compute* tests. Signed-off-by:
Katarzyna Piecielska <katarzyna.piecielska@intel.com> Reviewed-by:
Aditya Chauhan <aditya.chauhan@intel.com>
-
Francois Dugast authored
Using igt_assert_eq() to compare floats was incorrect and led to false positives, replace it with the appropriate assert. Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by:
Kamil Konieczny <kamil.konieczny@linux.intel.com> Signed-off-by:
Francois Dugast <francois.dugast@intel.com>
-
- Mar 04, 2025
-
-
unerlige authored
Define min and max oa exponents for the oa exponent test so that they can be set differently on slow platforms. Signed-off-by:
Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Reviewed-by:
Ashutosh Dixit <ashutosh.dixit@intel.com>
-