summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
3 hourstests/kms_ccs: Test XRGB2101010HEADmasterVille Syrjälä1-1/+4
I want to enable 10bpc CCS support for i915. To that end start testing it. Note that we are faking things a bit because rendercopy will still use a 8:8:8:8 format here (plumbing the full pixel format, as opposed to just bpp, would require quite a bit more work). However this seems to work fine, I suspect due to: - we only do 1:1: copies of data - the compression is lossless Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
5 hourstests/intel/kms_big_fb: Fix width calculation while creating the intel bufBhanuprakash Modem2-2/+2
This commit partially reverts bfa3db0cd9e9a - restores the changes done to the width calculation. v2: Add patch decription (Kamil / JP) Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
5 hourslib/igt_fb: fix intel modifiers for fb copying on xe driverJuha-Pekka Heikkila1-5/+17
mc ccs need to go to vebox copy, blitter doesn't do mc ccs hence on all platforms with ccs modifiers use engine copy for those. Use render engine for x-tile on legacy platforms where x-tile would otherwise endup on fastblit patch which is known to have limitations. Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
6 hourslib/xe/xe_spin: Improve description and fix typosJagmeet Randhawa1-4/+3
Improve description of xe_spin_free. Also while at this, fix few typos. Cc: Jonathan Cavitt <jonathan.cavitt@intel.com> Signed-off-by: Jagmeet Randhawa <jagmeet.randhawa@intel.com> Acked-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
9 hourslib/igt_kms: move setting DRM_CLIENT_CAP_WRITEBACK_CONNECTORS to kms_writebackAbhinav Kumar2-2/+5
Currently DRM_CLIENT_CAP_WRITEBACK_CONNECTORS is set in the igt_display_require() which is invoked for all IGT tests irrespective of whether the rest of the writeback connector properties such as the FB_ID are set. For the writeback connectors to function properly, additional setup steps are required (like setting up the output buffers and submitting the job). These steps are not a part of the default IGT setup, so there is no guarantee that the pipeline will be executed at all. This results in regressions for msm boards across multiple IGT tests on writeback connectors such as CTM related tests where CRC needs to be collected after the CTM has been applied in hardware. It is unclear whether this is intentional to be able to run all IGT tests even with writeback connector or it is only kms_writeback which is supposed to be the one. Lets try with the latter approach by setting DRM_CLIENT_CAP_WRITEBACK_CONNECTORS only within kms_writeback. changes since RFC: - minor fixes to commit message changes in v2: - use igt_require_f to print descriptive message - add msm card failure details in commit text Reviewed-by: Rob Clark <robdclark@gmail.com> Acked-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Acked-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Acked-by: Petri Latvala <adrinael@adrinael.net> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
3 dayslib/i915/perf: Accumulate clocks for MPEC format tooAshutosh Dixit1-1/+1
Clocks/gpu_ticks should also be accumulated in intel_perf_accumulate_reports. Fixes: cbe11c2939f8 ("lib/i915/perf: Add support for select MPEC formats") Signed-off-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
4 daystests/device_reset: move later skips into subtestsKamil Konieczny1-6/+40
It is safe to use skips just after igt_main() for skipping all subtests but later on they produce logs and even if CI will ignore that, such logs can mislead developers reading them. Move a skip from middle of igt_main() code block into subtests which needed them. v2: add space after while (Kamil) v3: remove macro in favor of function (Zbigniew) v4: rename function and make it compact (Zbigniew) v5: correct function behaviour after name change (Kamil) Cc: Mauro Carvalho Chehab <mauro.chehab@linux.intel.com> Cc: Sai Gowtham Ch <sai.gowtham.ch@intel.com> Cc: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com> Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
4 daystests/sriov_basic: Restore the igt_sriov_is_pf checkMarcin Bernatowicz1-0/+1
The requirement `igt_sriov_is_pf` is essential for accurately skipping tests in scenarios where the `sriov_totalvfs` attribute is absent. This update restores the previously removed check to ensure proper test behavior under such conditions. Signed-off-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
5 daystests/sriov_basic: Skip tests if sriov_totalvfs is zeroMarcin Bernatowicz1-1/+1
There is no point to run the tests if no VFs can be enabled. Additionally, the `for_random_sriov_num_vfs` macro will lead to undefined behavior if `sriov_totalvfs` is zero. Signed-off-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com> Reviewed-by: Lukasz Laguna <lukasz.laguna@intel.com>
5 dayslib/igt_drm_fdinfo: Start tracking available engine keysLucas De Marchi2-3/+12
Start tracking what are the available keys related to engine utilization that were parsed from fdinfo. This can be later used by application to make decisions on which of them to use. Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-8-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 dayslib/igt_drm_fdinfo: Parse drm-cyclesLucas De Marchi2-8/+25
Read drm-cycles from fdinfo and save it for later use. Like with the mem regions, allow the number of engines to be updated regardless if drm-engine-* or drm-cycles-* shows up first. Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-7-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 dayslib/igt_drm_fdinfo: Remove prefix arg from parse functionsLucas De Marchi1-23/+20
The prefix is not really needed and __igt_parse_drm_fdinfo() can simply pass l + keylen as argument which simplifies the parse functions. While refactoring this, it also replaces the remaining calls to index() to use strchr(). Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-6-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 dayslib/igt_drm_fdinfo: Stop passing key twiceLucas De Marchi1-41/+30
Change strstartswith() so it also returns the length, which then can be used inside the branch when it matches. A good compiler shall optimize out the strlen call since the argument is a constant literal. With this, the find_kv() is not needed anymore and the difference with regard the other branches can be summarized with a new ignore_space() helper and the fact it matches the entire key by appending the ':'. The helper is added on top of the file so it can be reused later. v2: Fix missing ignore_space() on drm-driver and drm-pdev Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-5-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 dayslib/igt_drm_fdinfo: Allow any number of spaces before unitLucas De Marchi1-8/+6
When parsing memory region, allow any number of spaces between value and unit by using ignore_space() and adjusting constness of the variables. Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-3-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 dayslib/igt_drm_fdinfo: Extract ignore_space()Lucas De Marchi1-2/+10
Extract ignore_space() to be used in other places. Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240504064643.25863-2-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 daystests/amdgpu/vce_enc: disable motion vector testVitaly Prosyak1-2/+8
Temporarily disable verification due to ongoing investigation to figure out the root cause of the error. The comparison would continue, but assert is commented out. Cc: Leo Liu <leo.liu@amd.com> Cc: Ruijing Dong <ruijing.dong@amd.com> Cc: Michael Strawbridge <michael.strawbridge@amd.com> Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com> Reviewed-by: Leo Liu <leo.liu@amd.com>
5 daystests/amdgpu/vce_enc: rename fileVitaly Prosyak2-1/+1
It was a typo , now rename amd_vce_dec.c to amd_vce_enc.c Cc: Leo Liu <leo.liu@amd.com> Cc: Ruijing Dong <ruijing.dong@amd.com> Cc: Michael Strawbridge <michael.strawbridge@amd.com> Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com> Reviewed-by: Leo Liu <leo.liu@amd.com>
5 daysgputop: Allow to set delay intervalLucas De Marchi2-2/+20
Like `top` and `htop`, allow to pass -d, --delay =SEC[.TENTHS] as argument. Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Link: https://lore.kernel.org/r/20240501173303.115737-5-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 daysgputop: Allow to limit number of executionsLucas De Marchi1-2/+14
Add argument to limit number of executions, similar to the one accepted by `top`. This allows testing changes and optimizations more easily. Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Link: https://lore.kernel.org/r/20240501173303.115737-4-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 daysgputop: Add option parsingLucas De Marchi1-0/+51
Add skeleton for option parsing, with just a -h/--help to be used for additional options later. Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Link: https://lore.kernel.org/r/20240501173303.115737-3-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 daysgputop: print percentage numberLucas De Marchi1-4/+6
Besides printing the bar, also print the raw number for easy visualization of small quantities. While at it, make sure gputop still works with small console widths. v2: Use %5.1f instead of %.1f so it also aligns the non-decimal part Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Link: https://lore.kernel.org/r/20240501173303.115737-2-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
5 daystests/intel: add other missing core tests to xe_test_config.jsonMauro Carvalho Chehab4-1/+4
All core tests are used to check Xe functionality. Add them to the Xe testplan configuration. Also, add descriptions for simple tests to the right place, as otherwise warnings will be produced: Warning: igt@core_getclient Description documentation is missing Warning: igt@core_getstats Description documentation is missing Warning: igt@core_setmaster_vs_auth Description documentation is missing As each subtest requires its own description. Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
6 daystests/intel/xe_debugfs: Extend gt test to check pat entryJanga Rahul Kumar1-0/+5
Read and dump pat debugfs entry. Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Priyanka Dandamudi <Priyanka.dandamudi@intel.com>
6 daystests/intel/xe_exec_queue_property: move skip into subtestKamil Konieczny1-4/+10
Skips in fixture are safe to use just after begin of igt_main() when they be working for all subtests. Later on, when used in fixture they can mislead developers reading logs, so move one into respective subtest. v2: use bool var instead of fd (Zbigniew) Cc: Sai Gowtham Ch <sai.gowtham.ch@intel.com> Cc: Mauro Carvalho Chehab <mauro.chehab@linux.intel.com> Cc: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com> Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
6 daystests/intel/xe_pm: Add mocs S2-idle/S3/S4 suspend resume testJanga Rahul Kumar1-10/+19
Add test to check mocs values are retained over S2-idle/S3/S4 suspend resume states. Cc: Badal Nilawar <badal.nilawar@intel.com> Cc: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Badal Nilawar <badal.nilawar@intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
6 daystests/intel/xe_pm: Add mocs runtime suspend resume testJanga Rahul Kumar1-0/+43
Add test to check mocs values are retained over runtime suspend/resume. Cc: Badal Nilawar <badal.nilawar@intel.com> Cc: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Badal Nilawar <badal.nilawar@intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
6 daystests/intel/xe_debugfs: Extend gt test to check mocs entryJanga Rahul Kumar1-0/+5
Read and dump mocs debugfs entry. Cc: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com> Reviewed-by: Badal Nilawar <badal.nilawar@intel.com>
7 daystests/intel: Change sys/signal.h to signal.hReagan Bohan5-5/+5
sys/signal.h is non standard, emits a warning on musl libc and is inconsistent with other files (which use just signal.h). Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daystools: use poll.h in includesReagan Bohan4-4/+4
sys/poll.h is non-standard and including it on musl produces a warning. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daystests: use poll.h in includesReagan Bohan22-22/+22
sys/poll.h is non-standard and including it on musl produces a warning. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daysrunner: use poll.h in includesReagan Bohan1-1/+1
sys/poll.h is non-standard and including it on musl produces a warning. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daysbenchmarks: use poll.h in includesReagan Bohan2-2/+2
sys/poll.h is non-standard and including it on musl produces a warning. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 dayslib: use poll.h in includesReagan Bohan3-3/+3
sys/poll.h is non-standard and including it on musl produces a warning. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daysmeson: Define _LARGEFILE64_SOURCE for musl libcReagan Bohan1-0/+2
musl libc expects this macro to be defined when using the types off64_t and ino64_t. This does not affect glibc. Signed-off-by: Reagan Bohan <reagan@ourmail.work> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daystests/intel/xe_pm: S4 to go up to devices onlyLucas De Marchi1-7/+14
Testing S4 (hibernation) is typically painful as there's mixed support in OS versions and platforms in CI. Doing the entire dance of saving the image to swap (which sometimes is a swapfile) and communicate that to the kernel that is going to be booted (without initrd in the CI case) is often a case of problems. Main goal of xe_pm is to test if the xe driver and the graphics card are working correctly, not that all the farm of machines correctly handle all the corner cases (which is even more problematic as we test early rc kernels). Stop doing that and rather switch to going up to device shutdown + platform low power state (the default in /sys/power/disk). If that is acceptable and work out great, we may even do that unconditionally, passing SUSPEND_TEST_DEVICES as it should work in other cases too. Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/1043 Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://lore.kernel.org/r/20240503224745.14890-3-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
7 dayslib/igt_aux: Name function according to sysfs fileLucas De Marchi1-5/+10
Let's follow the sysfs filename that is being written/read so it's not misinterpreted as something else: at first I thought it was dealing with /sys/power/state, which it's not. Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://lore.kernel.org/r/20240503224745.14890-2-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
7 daystests/intel/xe_pm: Reword *-basic descriptionLucas De Marchi1-1/+1
It doesn't make much sense to say the CPU is going to be put in D* state. Reword it so the CPU and GPU states are better captured. Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://lore.kernel.org/r/20240503224745.14890-1-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
7 dayslib/intel_ctx: Propagate error from __intel_ctx_xe_exec wait timeoutMaarten Lankhorst1-1/+1
Any wait timeouts are currently ignored, which might cause silent failures in test. Be more noisy about them. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
7 daystests/meson.build: Generate test-list for cross buildVignesh Raman1-16/+10
test-list.txt and test-list-full.txt are not generated for cross-builds and they are required by drm-ci for testing. Commit 485bcb98182d ("tests/meson.build: only generate testlists on native builds") disables generating .testlist files for cross-builds since the binaries cannot be executed but test-list.txt and test-list-full.txt generation shouldn't require that. So generate them for cross-builds. Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
7 daysigt_core: Update doc on generated test-list.txtGustavo Sousa1-5/+4
Commit e72686b83b0b ("tests: create a single combined test list") updated the build to generate a single test-list.txt instead of the two single-tests.txt and multi-tests.txt files. Update the documentation in igt_core.c to reflect that. Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com> Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://lore.kernel.org/r/20240503115545.44784-2-gustavo.sousa@intel.com
8 dayslib/gpu_cmds: be ready to use xe2 gpgpu fill on newer platformsDominik Grzegorzek1-2/+2
Doing xe2 gpgpu pipeline implementation we mostly taken into account possibility of reusing the implementation for future platforms. But not everywhere. Make it common. Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek@intel.com> Acked-by: Christoph Manszewski <christoph.manszewski@intel.com> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Link: https://lore.kernel.org/r/20240425121337.433948-1-dominik.grzegorzek@intel.com
10 dayslib/i915/perf: Fix warning on codegenLucas De Marchi1-6/+6
For a normal string, it's not correct to use just one backslash as escape char as that conflicts with Python's escape. Use raw strings for the regex patterns to avoid this problem. Fix the following warnings that starts showing up with Python 3.12 (see https://docs.python.org/3/whatsnew/3.12.html#other-language-changes): [4/1809] Generating lib/i915-perf-registers-hsw with a custom command /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:165: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)XeCore([0-9]+)$', name) /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:168: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)$', name) /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:171: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)DualSubslice([0-9]+)$', name) /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:341: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)$', name) /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:344: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)DualSubslice([0-9]+)$', name) /home/ldmartin/p/igt-gpu-tools/lib/i915/perf-configs/codegen.py:347: SyntaxWarning: invalid escape sequence '\$' m = re.search('\$GtSlice([0-9]+)XeCore([0-9]+)$', name) Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com> Link: https://lore.kernel.org/r/20240501070145.49810-1-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
10 dayslib/igt_drm_clients: lazy stat processLucas De Marchi1-25/+25
Only try to get task data like pid and name when that is required. Typically most of the processes in a system don't have a drm fd open. So only open and use /proc/<pid>/stat when it's needed. For the data below, system is running with just a single drm client: Before: Performance counter stats for './build/tools/gputop -d 0.1 -n 10': 507.19 msec task-clock # 0.334 CPUs utilized 29 context-switches # 57.178 /sec 4 cpu-migrations # 7.887 /sec 75 page-faults # 147.874 /sec (...) 1.518253637 seconds time elapsed 0.007989000 seconds user 0.503351000 seconds sys After: Performance counter stats for './build/tools/gputop -d 0.1 -n 10': 384.01 msec task-clock # 0.275 CPUs utilized 17 context-switches # 44.270 /sec 1 cpu-migrations # 2.604 /sec 74 page-faults # 192.705 /sec (...) 1.397640800 seconds time elapsed 0.008106000 seconds user 0.385048000 seconds sys Looking only at the execution time of igt_drm_clients_scan() over 10 runs. Before: 47138890 nsec After: 33978388 nsec So in both methods it shows a ~25% speedup. It is expected that in a system with more clients this won't be as high. Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com> Link: https://lore.kernel.org/r/20240501174001.121324-1-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
10 daystests/kms_async_flips: Allow the first async flip to change modifierVille Syrjälä1-9/+20
The kernel will now allow the first async flip to change the modifier. Test that it works as indended: first async flip the attempts to change the modifier will succeed, and subsequent async flips that attempt the same will fail. Reviewed-by: Vandita Kulkarni <vandita.kulkarni@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 daystests/kms_async_flips: Extend the "async flip needs an extra frame" logicVille Syrjälä1-20/+30
Soon i915 will be converting the first async flip always to a sync flip on SKL+. The reason being that Xorg/modesetting typically attempts to change the modifier when it issues the first async flip, and we can't do that with an actual async flip. Extend the logic to consider all platforms that need the extra frame, which will now be: - BDW-GLK due to the async flip hw double buffer fail - SKL+ to change the modifier - ADL+ to optimize watermarks/DDB Note that the 'AT_LEAST_GEN(devid, 12)' already included TGL in this logic despite the kernel not actually forcing any sync flips on it previously. So only ICL was being correctly excluded here. Also BDW wasn't being included despite needing it due to the double buffer fail. Reviewed-by: Vandita Kulkarni <vandita.kulkarni@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
11 daystests/intel/xe_compute_preempt: Check skip condition from parent processNakshtra Goyal1-0/+1
Check test is supported on a platform or not from parent process and run test once from parent process before creating child processes as skip check is not allowed from child processes Signed-off-by: Nakshtra Goyal <nakshtra.goyal@intel.com> Reviewed-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
11 daystests/intel/xe_gt_freq: Check for RPe freq updatesVinay Belgaumkar1-0/+7
Pcode can dynamically update RPe frequency. Use the latest value in tests that check it. Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
13 daystools/gputop: Extract clrscr()Lucas De Marchi1-3/+7
Make it clear what the CSI is doing. Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240430190150.3654507-6-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
13 daystools/gputop: Extract method to update console sizeLucas De Marchi1-11/+19
Cleanup the mainloop moving the console size handling to a helper functions. Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240430190150.3654507-5-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
13 dayslib/igt_drm_fdinfo: Stop ignoring space where not neededLucas De Marchi1-6/+4
strto[ul]l() family of functions already ignore leading spaces. There's no need to be explicit. Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com> Link: https://lore.kernel.org/r/20240430190150.3654507-4-lucas.demarchi@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>