* [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test
@ 2023-04-25 16:24 Vinay Belgaumkar
2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 1/4] lib/debugfs: Add per GT debugfs helpers Vinay Belgaumkar
` (4 more replies)
0 siblings, 5 replies; 13+ messages in thread
From: Vinay Belgaumkar @ 2023-04-25 16:24 UTC (permalink / raw)
To: intel-gfx, igt-dev
Borrow some subtests from xe_guc_pc. Also add per GT debugfs helpers.
v3: Review comments and add HAX patch
v4: Modify the condition for skipping the test
v5: Update the SLPC helper to per GT
v6: Review comments (Ashutosh)
Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Vinay Belgaumkar (4):
lib/debugfs: Add per GT debugfs helpers
lib: Make SLPC helper function per GT
i915_pm_freq_api: Add some basic SLPC igt tests
HAX: tests/i915: Try out the SLPC IGT tests
lib/igt_debugfs.c | 60 ++++++++++
lib/igt_debugfs.h | 4 +
lib/igt_pm.c | 37 +++++--
lib/igt_pm.h | 3 +-
tests/i915/i915_pm_freq_api.c | 153 ++++++++++++++++++++++++++
tests/intel-ci/fast-feedback.testlist | 2 +
tests/meson.build | 1 +
7 files changed, 250 insertions(+), 10 deletions(-)
create mode 100644 tests/i915/i915_pm_freq_api.c
--
2.38.1
^ permalink raw reply [flat|nested] 13+ messages in thread* [igt-dev] [PATCH i-g-t 1/4] lib/debugfs: Add per GT debugfs helpers 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar @ 2023-04-25 16:24 ` Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 2/4] lib: Make SLPC helper function per GT Vinay Belgaumkar ` (3 subsequent siblings) 4 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-25 16:24 UTC (permalink / raw) To: intel-gfx, igt-dev These can be used to open per-gt debugfs files. Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Vinay Belgaumkar <viay.belgaumkar@intel.com> --- lib/igt_debugfs.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++ lib/igt_debugfs.h | 4 ++++ 2 files changed, 64 insertions(+) diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c index 05889bbe..afde2da6 100644 --- a/lib/igt_debugfs.c +++ b/lib/igt_debugfs.c @@ -217,6 +217,37 @@ int igt_debugfs_dir(int device) return open(path, O_RDONLY); } +/** + * igt_debugfs_gt_dir: + * @device: fd of the device + * @gt: GT instance number + * + * This opens the debugfs directory corresponding to device for use + * with igt_sysfs_get() and related functions. + * + * Returns: + * The directory fd, or -1 on failure. + */ +int igt_debugfs_gt_dir(int device, unsigned int gt) +{ + int debugfs_gt_dir_fd; + char path[PATH_MAX]; + char gtpath[16]; + int ret; + + if (!igt_debugfs_path(device, path, sizeof(path))) + return -1; + + ret = snprintf(gtpath, sizeof(gtpath), "/gt%u", gt); + igt_assert(ret < sizeof(gtpath)); + strncat(path, gtpath, sizeof(path) - 1); + + debugfs_gt_dir_fd = open(path, O_RDONLY); + igt_debug_on_f(debugfs_gt_dir_fd < 0, "path: %s\n", path); + + return debugfs_gt_dir_fd; +} + /** * igt_debugfs_connector_dir: * @device: fd of the device @@ -313,6 +344,35 @@ bool igt_debugfs_exists(int device, const char *filename, int mode) return false; } +/** + * igt_debugfs_gt_open: + * @device: open i915 drm fd + * @gt: gt instance number + * @filename: name of the debugfs node to open + * @mode: mode bits as used by open() + * + * This opens a debugfs file as a Unix file descriptor. The filename should be + * relative to the drm device's root, i.e. without "drm/$minor". + * + * Returns: + * The Unix file descriptor for the debugfs file or -1 if that didn't work out. + */ +int +igt_debugfs_gt_open(int device, unsigned int gt, const char *filename, int mode) +{ + int dir, ret; + + dir = igt_debugfs_gt_dir(device, gt); + if (dir < 0) + return dir; + + ret = openat(dir, filename, mode); + + close(dir); + + return ret; +} + /** * igt_debugfs_simple_read: * @dir: fd of the debugfs directory diff --git a/lib/igt_debugfs.h b/lib/igt_debugfs.h index 4824344a..3e6194ad 100644 --- a/lib/igt_debugfs.h +++ b/lib/igt_debugfs.h @@ -45,6 +45,10 @@ void __igt_debugfs_write(int fd, const char *filename, const char *buf, int size int igt_debugfs_simple_read(int dir, const char *filename, char *buf, int size); bool igt_debugfs_search(int fd, const char *filename, const char *substring); +int igt_debugfs_gt_dir(int device, unsigned int gt); +int igt_debugfs_gt_open(int device, unsigned int gt, const char *filename, + int mode); + /** * igt_debugfs_read: * @filename: name of the debugfs file -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 2/4] lib: Make SLPC helper function per GT 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 1/4] lib/debugfs: Add per GT debugfs helpers Vinay Belgaumkar @ 2023-04-25 16:24 ` Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar ` (2 subsequent siblings) 4 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-25 16:24 UTC (permalink / raw) To: intel-gfx, igt-dev Use default of 0 where GT id is not being used. Fixes: https://gitlab.freedesktop.org/drm/intel/-/issues/8308 v2: Add a helper for GT 0 (Ashutosh) v3: Additional review comments (Ashutosh) v4: Return false if slpc debugfs is not found Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> --- lib/igt_pm.c | 37 ++++++++++++++++++++++++++++--------- lib/igt_pm.h | 3 ++- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/lib/igt_pm.c b/lib/igt_pm.c index 704acf7d..e60b09a7 100644 --- a/lib/igt_pm.c +++ b/lib/igt_pm.c @@ -1329,21 +1329,40 @@ void igt_pm_print_pci_card_runtime_status(void) } } -bool i915_is_slpc_enabled(int fd) +/** + * i915_is_slpc_enabled_gt: + * @drm_fd: DRM file descriptor + * @gt: GT id + * Check if SLPC is enabled on a GT + */ +bool i915_is_slpc_enabled_gt(int drm_fd, int gt) { - int debugfs_fd = igt_debugfs_dir(fd); + int dir, debugfs_fd; char buf[4096] = {}; - int len; - igt_require(debugfs_fd != -1); + dir = igt_debugfs_gt_dir(drm_fd, gt); + igt_require(dir); + + debugfs_fd = openat(dir, "uc/guc_slpc_info", O_RDONLY); + /* if guc_slpc_info not present then return false */ + if (debugfs_fd < 0) + return false; + + read(debugfs_fd, buf, sizeof(buf)-1); - len = igt_debugfs_simple_read(debugfs_fd, "gt/uc/guc_slpc_info", buf, sizeof(buf)); close(debugfs_fd); - if (len < 0) - return false; - else - return strstr(buf, "SLPC state: running"); + return strstr(buf, "SLPC state: running"); +} + +/** + * i915_is_slpc_enabled: + * @drm_fd: DRM file descriptor + * Check if SLPC is enabled for the device + */ +bool i915_is_slpc_enabled(int drm_fd) +{ + return i915_is_slpc_enabled_gt(drm_fd, 0); } int igt_pm_get_runtime_suspended_time(struct pci_device *pci_dev) diff --git a/lib/igt_pm.h b/lib/igt_pm.h index d0d6d673..448cf42d 100644 --- a/lib/igt_pm.h +++ b/lib/igt_pm.h @@ -84,7 +84,8 @@ void igt_pm_set_d3cold_allowed(struct igt_device_card *card, const char *val); void igt_pm_setup_pci_card_runtime_pm(struct pci_device *pci_dev); void igt_pm_restore_pci_card_runtime_pm(void); void igt_pm_print_pci_card_runtime_status(void); -bool i915_is_slpc_enabled(int fd); +bool i915_is_slpc_enabled_gt(int drm_fd, int gt); +bool i915_is_slpc_enabled(int drm_fd); int igt_pm_get_runtime_suspended_time(struct pci_device *pci_dev); int igt_pm_get_runtime_usage(struct pci_device *pci_dev); -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 1/4] lib/debugfs: Add per GT debugfs helpers Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 2/4] lib: Make SLPC helper function per GT Vinay Belgaumkar @ 2023-04-25 16:24 ` Vinay Belgaumkar 2023-04-26 20:40 ` Dixit, Ashutosh 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 4/4] HAX: tests/i915: Try out the SLPC IGT tests Vinay Belgaumkar 2023-04-25 20:54 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) Patchwork 4 siblings, 1 reply; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-25 16:24 UTC (permalink / raw) To: intel-gfx, igt-dev Validate basic api for GT freq control. Also test interaction with GT reset. We skip rps tests with SLPC enabled, this will re-introduce some coverage. SLPC selftests are already covering some other workload related scenarios. v2: Rename test (Rodrigo) v3: Review comments (Ashutosh) v4: Skip when SLPC is disabled. Check for enable_guc is not sufficient as kernel config may have it but the platform doesn't actually support it. v5: Use the updated SLPC helper v6: Check for guc enabled as well as slpc debugfs Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> --- tests/i915/i915_pm_freq_api.c | 153 ++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 154 insertions(+) create mode 100644 tests/i915/i915_pm_freq_api.c diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c new file mode 100644 index 00000000..17adacbc --- /dev/null +++ b/tests/i915/i915_pm_freq_api.c @@ -0,0 +1,153 @@ +// SPDX-License-Identifier: MIT +/* + * Copyright © 2023 Intel Corporation + */ + +#include <dirent.h> +#include <errno.h> +#include <fcntl.h> +#include <inttypes.h> +#include <stdlib.h> +#include <sys/stat.h> +#include <sys/syscall.h> +#include <sys/types.h> +#include <unistd.h> + +#include "drmtest.h" +#include "i915/gem.h" +#include "igt_sysfs.h" +#include "igt.h" + +IGT_TEST_DESCRIPTION("Test SLPC freq API"); +/* + * Too many intermediate components and steps before freq is adjusted + * Specially if workload is under execution, so let's wait 100 ms. + */ +#define ACT_FREQ_LATENCY_US 100000 + +static uint32_t get_freq(int dirfd, uint8_t id) +{ + uint32_t val; + + igt_assert(igt_sysfs_rps_scanf(dirfd, id, "%u", &val) == 1); + + return val; +} + +static int set_freq(int dirfd, uint8_t id, uint32_t val) +{ + return igt_sysfs_rps_printf(dirfd, id, "%u", val); +} + +static void test_freq_basic_api(int dirfd, int gt) +{ + uint32_t rpn, rp0, rpe; + + /* Save frequencies */ + rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + rp0 = get_freq(dirfd, RPS_RP0_FREQ_MHZ); + rpe = get_freq(dirfd, RPS_RP1_FREQ_MHZ); + igt_info("System min freq: %dMHz; max freq: %dMHz\n", rpn, rp0); + + /* + * Negative bound tests + * RPn is the floor + * RP0 is the ceiling + */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0 + 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0 + 1) < 0); + + /* Assert min requests are respected from rp0 to rpn */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rp0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Assert max requests are respected from rpn to rp0 */ + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rp0); + +} + +static void test_reset(int i915, int dirfd, int gt) +{ + uint32_t rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + int fd; + + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + usleep(ACT_FREQ_LATENCY_US); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Manually trigger a GT reset */ + fd = igt_debugfs_gt_open(i915, gt, "reset", O_WRONLY); + igt_require(fd >= 0); + igt_ignore_warn(write(fd, "1\n", 2)); + close(fd); + + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); +} + +igt_main +{ + int i915 = -1; + uint32_t *stash_min, *stash_max; + + igt_fixture { + int num_gts, dirfd, gt; + + i915 = drm_open_driver(DRIVER_INTEL); + igt_require_gem(i915); + /* i915_pm_rps already covers execlist path */ + igt_require_f(gem_using_guc_submission(i915) && + i915_is_slpc_enabled(i915), + "This test is supported only with SLPC enabled\n"); + + num_gts = igt_sysfs_get_num_gt(i915); + stash_min = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + stash_max = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + + /* Save curr min and max across GTs */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + stash_min[gt] = get_freq(dirfd, RPS_MIN_FREQ_MHZ); + stash_max[gt] = get_freq(dirfd, RPS_MAX_FREQ_MHZ); + } + } + + igt_describe("Test basic API for controlling min/max GT frequency"); + igt_subtest_with_dynamic_f("freq-basic-api") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_freq_basic_api(dirfd, gt); + } + + igt_describe("Test basic freq API works after a reset"); + igt_subtest_with_dynamic_f("freq-reset") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_reset(i915, dirfd, gt); + } + + igt_fixture { + int dirfd, gt; + /* Restore frequencies */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, stash_max[gt]) > 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, stash_min[gt]) > 0); + } + close(i915); + } +} diff --git a/tests/meson.build b/tests/meson.build index da31e782..46109f10 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -202,6 +202,7 @@ i915_progs = [ 'gem_workarounds', 'i915_fb_tiling', 'i915_getparams_basic', + 'i915_pm_freq_api', 'i915_hangman', 'i915_hwmon', 'i915_module_load', -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar @ 2023-04-26 20:40 ` Dixit, Ashutosh 2023-04-27 16:24 ` [igt-dev] [Intel-gfx] " Kamil Konieczny 0 siblings, 1 reply; 13+ messages in thread From: Dixit, Ashutosh @ 2023-04-26 20:40 UTC (permalink / raw) To: Vinay Belgaumkar; +Cc: igt-dev, intel-gfx On Tue, 25 Apr 2023 09:24:04 -0700, Vinay Belgaumkar wrote: > > diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c > new file mode 100644 > index 00000000..17adacbc > --- /dev/null > +++ b/tests/i915/i915_pm_freq_api.c > @@ -0,0 +1,153 @@ > +// SPDX-License-Identifier: MIT > +/* > + * Copyright © 2023 Intel Corporation > + */ > + > +#include <dirent.h> > +#include <errno.h> > +#include <fcntl.h> > +#include <inttypes.h> > +#include <stdlib.h> > +#include <sys/stat.h> > +#include <sys/syscall.h> > +#include <sys/types.h> > +#include <unistd.h> > + > +#include "drmtest.h" The series is merged but before merging I removed all the #include's above, they are not needed. > +#include "i915/gem.h" > +#include "igt_sysfs.h" > +#include "igt.h" Thanks. -- Ashutosh ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [Intel-gfx] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-26 20:40 ` Dixit, Ashutosh @ 2023-04-27 16:24 ` Kamil Konieczny 2023-04-27 16:40 ` Dixit, Ashutosh 0 siblings, 1 reply; 13+ messages in thread From: Kamil Konieczny @ 2023-04-27 16:24 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx Hi Ashutosh, On 2023-04-26 at 13:40:28 -0700, Dixit, Ashutosh wrote: > On Tue, 25 Apr 2023 09:24:04 -0700, Vinay Belgaumkar wrote: > > > > diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c > > new file mode 100644 > > index 00000000..17adacbc > > --- /dev/null > > +++ b/tests/i915/i915_pm_freq_api.c > > @@ -0,0 +1,153 @@ > > +// SPDX-License-Identifier: MIT > > +/* > > + * Copyright © 2023 Intel Corporation > > + */ > > + > > +#include <dirent.h> > > +#include <errno.h> > > +#include <fcntl.h> > > +#include <inttypes.h> > > +#include <stdlib.h> > > +#include <sys/stat.h> > > +#include <sys/syscall.h> > > +#include <sys/types.h> > > +#include <unistd.h> > > + > > +#include "drmtest.h" > > The series is merged but before merging I removed all the #include's above, > they are not needed. Please do not do this, at least send it to trybot and look at GitLab.Pipeline status. There are platforms where compilation failed due to missing fcntl.h, see https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/137 It is fixed now with https://patchwork.freedesktop.org/series/117047/ Regards, Kamil > > > +#include "i915/gem.h" > > +#include "igt_sysfs.h" > > +#include "igt.h" > > Thanks. > -- > Ashutosh ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] [Intel-gfx] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-27 16:24 ` [igt-dev] [Intel-gfx] " Kamil Konieczny @ 2023-04-27 16:40 ` Dixit, Ashutosh 0 siblings, 0 replies; 13+ messages in thread From: Dixit, Ashutosh @ 2023-04-27 16:40 UTC (permalink / raw) To: Kamil Konieczny, igt-dev, Dixit, Ashutosh, Vinay Belgaumkar, intel-gfx On Thu, 27 Apr 2023 09:24:58 -0700, Kamil Konieczny wrote: > > Hi Ashutosh, > > On 2023-04-26 at 13:40:28 -0700, Dixit, Ashutosh wrote: > > On Tue, 25 Apr 2023 09:24:04 -0700, Vinay Belgaumkar wrote: > > > > > > diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c > > > new file mode 100644 > > > index 00000000..17adacbc > > > --- /dev/null > > > +++ b/tests/i915/i915_pm_freq_api.c > > > @@ -0,0 +1,153 @@ > > > +// SPDX-License-Identifier: MIT > > > +/* > > > + * Copyright © 2023 Intel Corporation > > > + */ > > > + > > > +#include <dirent.h> > > > +#include <errno.h> > > > +#include <fcntl.h> > > > +#include <inttypes.h> > > > +#include <stdlib.h> > > > +#include <sys/stat.h> > > > +#include <sys/syscall.h> > > > +#include <sys/types.h> > > > +#include <unistd.h> > > > + > > > +#include "drmtest.h" > > > > The series is merged but before merging I removed all the #include's above, > > they are not needed. > > Please do not do this, at least send it to trybot and look at > GitLab.Pipeline status. There are platforms where compilation > failed due to missing fcntl.h, see > https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/137 > > It is fixed now with > https://patchwork.freedesktop.org/series/117047/ Hi Kamil, agreed, sorry about that. Lesson learnt. Thanks for fixing it quickly. Ashutosh ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 4/4] HAX: tests/i915: Try out the SLPC IGT tests 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar ` (2 preceding siblings ...) 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar @ 2023-04-25 16:24 ` Vinay Belgaumkar 2023-04-25 20:54 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) Patchwork 4 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-25 16:24 UTC (permalink / raw) To: intel-gfx, igt-dev Trying out for CI. Do not review. Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> --- tests/intel-ci/fast-feedback.testlist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/intel-ci/fast-feedback.testlist b/tests/intel-ci/fast-feedback.testlist index d9fcb62d..653668dd 100644 --- a/tests/intel-ci/fast-feedback.testlist +++ b/tests/intel-ci/fast-feedback.testlist @@ -139,6 +139,8 @@ igt@prime_self_import@basic-with_fd_dup igt@prime_self_import@basic-with_one_bo igt@prime_self_import@basic-with_one_bo_two_files igt@prime_self_import@basic-with_two_bos +igt@i915_pm_freq_api@freq-basic-api +igt@i915_pm_freq_api@freq-reset igt@prime_vgem@basic-fence-flip igt@prime_vgem@basic-fence-mmap igt@prime_vgem@basic-fence-read -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar ` (3 preceding siblings ...) 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 4/4] HAX: tests/i915: Try out the SLPC IGT tests Vinay Belgaumkar @ 2023-04-25 20:54 ` Patchwork 2023-04-25 22:44 ` Belgaumkar, Vinay 4 siblings, 1 reply; 13+ messages in thread From: Patchwork @ 2023-04-25 20:54 UTC (permalink / raw) To: Vinay Belgaumkar; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 14281 bytes --] == Series Details == Series: tests/slpc: Add basic IGT test (rev8) URL : https://patchwork.freedesktop.org/series/115698/ State : failure == Summary == CI Bug Log - changes from IGT_7271 -> IGTPW_8858 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_8858 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_8858, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html Participating hosts (39 -> 38) ------------------------------ Missing (1): fi-snb-2520m Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_8858: ### IGT changes ### #### Possible regressions #### * {igt@i915_pm_freq_api@freq-basic-api} (NEW): - bat-jsl-3: NOTRUN -> [SKIP][1] +1 similar issue [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-jsl-3/igt@i915_pm_freq_api@freq-basic-api.html - fi-tgl-1115g4: NOTRUN -> [SKIP][2] +1 similar issue [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-tgl-1115g4/igt@i915_pm_freq_api@freq-basic-api.html - bat-jsl-1: NOTRUN -> [SKIP][3] +1 similar issue [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-jsl-1/igt@i915_pm_freq_api@freq-basic-api.html * {igt@i915_pm_freq_api@freq-reset} (NEW): - fi-rkl-11600: NOTRUN -> [SKIP][4] +1 similar issue [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-rkl-11600/igt@i915_pm_freq_api@freq-reset.html - bat-adls-5: NOTRUN -> [SKIP][5] +1 similar issue [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adls-5/igt@i915_pm_freq_api@freq-reset.html * igt@i915_selftest@live@gt_heartbeat: - fi-kbl-soraka: [PASS][6] -> [FAIL][7] [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@i915_pm_rps@basic-api: - {bat-mtlp-8}: [FAIL][8] ([i915#8346]) -> [SKIP][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-mtlp-8/igt@i915_pm_rps@basic-api.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_pm_rps@basic-api.html * igt@i915_selftest@live@slpc: - {bat-mtlp-8}: NOTRUN -> [FAIL][10] +2 similar issues [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_selftest@live@slpc.html New tests --------- New tests have been introduced between IGT_7271 and IGTPW_8858: ### New IGT tests (6) ### * igt@i915_pm_freq_api@freq-basic-api: - Statuses : 25 skip(s) - Exec time: [0.0] s * igt@i915_pm_freq_api@freq-basic-api@gt0: - Statuses : 13 pass(s) - Exec time: [0.0] s * igt@i915_pm_freq_api@freq-basic-api@gt1: - Statuses : 1 pass(s) - Exec time: [0.0] s * igt@i915_pm_freq_api@freq-reset: - Statuses : 25 skip(s) - Exec time: [0.0] s * igt@i915_pm_freq_api@freq-reset@gt0: - Statuses : 13 pass(s) - Exec time: [0.0] s * igt@i915_pm_freq_api@freq-reset@gt1: - Statuses : 1 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in IGTPW_8858 that come from known issues: ### IGT changes ### #### Issues hit #### * {igt@i915_pm_freq_api@freq-basic-api} (NEW): - fi-glk-j4005: NOTRUN -> [SKIP][11] ([fdo#109271]) +1 similar issue [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-glk-j4005/igt@i915_pm_freq_api@freq-basic-api.html - fi-skl-guc: NOTRUN -> [SKIP][12] ([fdo#109271]) +1 similar issue [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-skl-guc/igt@i915_pm_freq_api@freq-basic-api.html - fi-kbl-soraka: NOTRUN -> [SKIP][13] ([fdo#109271]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-soraka/igt@i915_pm_freq_api@freq-basic-api.html - fi-cfl-8109u: NOTRUN -> [SKIP][14] ([fdo#109271]) +1 similar issue [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-8109u/igt@i915_pm_freq_api@freq-basic-api.html - fi-kbl-7567u: NOTRUN -> [SKIP][15] ([fdo#109271]) +1 similar issue [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-7567u/igt@i915_pm_freq_api@freq-basic-api.html - fi-cfl-8700k: NOTRUN -> [SKIP][16] ([fdo#109271]) +1 similar issue [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-8700k/igt@i915_pm_freq_api@freq-basic-api.html - fi-kbl-8809g: NOTRUN -> [SKIP][17] ([fdo#109271]) +1 similar issue [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-8809g/igt@i915_pm_freq_api@freq-basic-api.html - fi-ivb-3770: NOTRUN -> [SKIP][18] ([fdo#109271]) +1 similar issue [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-ivb-3770/igt@i915_pm_freq_api@freq-basic-api.html - fi-elk-e7500: NOTRUN -> [SKIP][19] ([fdo#109271]) +1 similar issue [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-elk-e7500/igt@i915_pm_freq_api@freq-basic-api.html - fi-bsw-nick: NOTRUN -> [SKIP][20] ([fdo#109271]) +1 similar issue [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-bsw-nick/igt@i915_pm_freq_api@freq-basic-api.html - fi-kbl-guc: NOTRUN -> [SKIP][21] ([fdo#109271]) +1 similar issue [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-guc/igt@i915_pm_freq_api@freq-basic-api.html - fi-ilk-650: NOTRUN -> [SKIP][22] ([fdo#109271]) +1 similar issue [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-ilk-650/igt@i915_pm_freq_api@freq-basic-api.html - fi-cfl-guc: NOTRUN -> [SKIP][23] ([fdo#109271]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-guc/igt@i915_pm_freq_api@freq-basic-api.html - fi-kbl-x1275: NOTRUN -> [SKIP][24] ([fdo#109271]) +1 similar issue [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-x1275/igt@i915_pm_freq_api@freq-basic-api.html - fi-hsw-4770: NOTRUN -> [SKIP][25] ([fdo#109271]) +1 similar issue [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-hsw-4770/igt@i915_pm_freq_api@freq-basic-api.html * {igt@i915_pm_freq_api@freq-reset} (NEW): - fi-blb-e6850: NOTRUN -> [SKIP][26] ([fdo#109271]) +1 similar issue [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-blb-e6850/igt@i915_pm_freq_api@freq-reset.html - fi-bsw-n3050: NOTRUN -> [SKIP][27] ([fdo#109271]) +1 similar issue [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-bsw-n3050/igt@i915_pm_freq_api@freq-reset.html - {bat-kbl-2}: NOTRUN -> [SKIP][28] ([fdo#109271]) +1 similar issue [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-kbl-2/igt@i915_pm_freq_api@freq-reset.html - fi-skl-6600u: NOTRUN -> [SKIP][29] ([fdo#109271]) +1 similar issue [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-skl-6600u/igt@i915_pm_freq_api@freq-reset.html - fi-apl-guc: NOTRUN -> [SKIP][30] ([fdo#109271]) +1 similar issue [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-apl-guc/igt@i915_pm_freq_api@freq-reset.html * igt@i915_pm_rps@basic-api: - bat-dg1-7: [PASS][31] -> [SKIP][32] ([i915#6621]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg1-7/igt@i915_pm_rps@basic-api.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg1-7/igt@i915_pm_rps@basic-api.html - bat-adlp-9: [PASS][33] -> [SKIP][34] ([i915#6621]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlp-9/igt@i915_pm_rps@basic-api.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlp-9/igt@i915_pm_rps@basic-api.html - bat-adlp-6: [PASS][35] -> [SKIP][36] ([i915#6621]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlp-6/igt@i915_pm_rps@basic-api.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlp-6/igt@i915_pm_rps@basic-api.html - bat-rplp-1: [PASS][37] -> [SKIP][38] ([i915#6621]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rplp-1/igt@i915_pm_rps@basic-api.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rplp-1/igt@i915_pm_rps@basic-api.html - bat-dg1-5: [PASS][39] -> [SKIP][40] ([i915#6621]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg1-5/igt@i915_pm_rps@basic-api.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg1-5/igt@i915_pm_rps@basic-api.html - bat-atsm-1: [PASS][41] -> [SKIP][42] ([i915#6621]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-atsm-1/igt@i915_pm_rps@basic-api.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-atsm-1/igt@i915_pm_rps@basic-api.html - bat-dg2-9: [PASS][43] -> [SKIP][44] ([i915#6621]) [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-9/igt@i915_pm_rps@basic-api.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-9/igt@i915_pm_rps@basic-api.html - bat-dg2-11: [PASS][45] -> [SKIP][46] ([i915#6621]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-11/igt@i915_pm_rps@basic-api.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-11/igt@i915_pm_rps@basic-api.html - bat-adln-1: [PASS][47] -> [SKIP][48] ([i915#6621]) [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adln-1/igt@i915_pm_rps@basic-api.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adln-1/igt@i915_pm_rps@basic-api.html - bat-dg2-8: [PASS][49] -> [SKIP][50] ([i915#6621]) [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-8/igt@i915_pm_rps@basic-api.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-8/igt@i915_pm_rps@basic-api.html - bat-adlm-1: [PASS][51] -> [SKIP][52] ([i915#6621]) [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlm-1/igt@i915_pm_rps@basic-api.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlm-1/igt@i915_pm_rps@basic-api.html - bat-rpls-1: [PASS][53] -> [SKIP][54] ([i915#6621]) [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rpls-1/igt@i915_pm_rps@basic-api.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rpls-1/igt@i915_pm_rps@basic-api.html * igt@i915_selftest@live@gt_lrc: - bat-adln-1: [PASS][55] -> [INCOMPLETE][56] ([i915#7609]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adln-1/igt@i915_selftest@live@gt_lrc.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adln-1/igt@i915_selftest@live@gt_lrc.html * igt@i915_selftest@live@reset: - bat-rpls-1: [PASS][57] -> [ABORT][58] ([i915#8384]) [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rpls-1/igt@i915_selftest@live@reset.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rpls-1/igt@i915_selftest@live@reset.html * igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1: - bat-dg2-8: [PASS][59] -> [FAIL][60] ([i915#7932]) [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html * igt@kms_pipe_crc_basic@read-crc: - bat-dg2-11: NOTRUN -> [SKIP][61] ([i915#5354]) [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-11/igt@kms_pipe_crc_basic@read-crc.html #### Possible fixes #### * igt@i915_selftest@live@requests: - {bat-mtlp-8}: [ABORT][62] -> [PASS][63] [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-mtlp-8/igt@i915_selftest@live@requests.html [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_selftest@live@requests.html #### Warnings #### * igt@i915_suspend@basic-s3-without-i915: - fi-tgl-1115g4: [INCOMPLETE][64] -> [INCOMPLETE][65] ([i915#7443]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/fi-tgl-1115g4/igt@i915_suspend@basic-s3-without-i915.html [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-tgl-1115g4/igt@i915_suspend@basic-s3-without-i915.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621 [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645 [i915#7443]: https://gitlab.freedesktop.org/drm/intel/issues/7443 [i915#7609]: https://gitlab.freedesktop.org/drm/intel/issues/7609 [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828 [i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932 [i915#8346]: https://gitlab.freedesktop.org/drm/intel/issues/8346 [i915#8384]: https://gitlab.freedesktop.org/drm/intel/issues/8384 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7271 -> IGTPW_8858 CI-20190529: 20190529 CI_DRM_13062: 5a0333cf630a335d7e8f60fd2b8526ed0895900c @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_8858: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html IGT_7271: d12d7eb92226e14745a80e6bdd95384913a43548 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git Testlist changes ---------------- +igt@i915_pm_freq_api@freq-basic-api +igt@i915_pm_freq_api@freq-reset == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html [-- Attachment #2: Type: text/html, Size: 17744 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) 2023-04-25 20:54 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) Patchwork @ 2023-04-25 22:44 ` Belgaumkar, Vinay 0 siblings, 0 replies; 13+ messages in thread From: Belgaumkar, Vinay @ 2023-04-25 22:44 UTC (permalink / raw) To: igt-dev [-- Attachment #1: Type: text/plain, Size: 17175 bytes --] On 4/25/2023 1:54 PM, Patchwork wrote: > Project List - Patchwork *Patch Details* > *Series:* tests/slpc: Add basic IGT test (rev8) > *URL:* https://patchwork.freedesktop.org/series/115698/ > *State:* failure > *Details:* > https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html > > > CI Bug Log - changes from IGT_7271 -> IGTPW_8858 > > > Summary > > *FAILURE* > > Serious unknown changes coming with IGTPW_8858 absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in IGTPW_8858, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives > in CI. > > External URL: > https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html > > > Participating hosts (39 -> 38) > > Missing (1): fi-snb-2520m > > > Possible new issues > > Here are the unknown changes that may have been introduced in IGTPW_8858: > > > IGT changes > > > Possible regressions > > * > > {igt@i915_pm_freq_api@freq-basic-api} (NEW): > > o > > bat-jsl-3: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-jsl-3/igt@i915_pm_freq_api@freq-basic-api.html> > +1 similar issue > > o > > fi-tgl-1115g4: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-tgl-1115g4/igt@i915_pm_freq_api@freq-basic-api.html> > +1 similar issue > > o > > bat-jsl-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-jsl-1/igt@i915_pm_freq_api@freq-basic-api.html> > +1 similar issue > > * > > {igt@i915_pm_freq_api@freq-reset} (NEW): > > o > > fi-rkl-11600: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-rkl-11600/igt@i915_pm_freq_api@freq-reset.html> > +1 similar issue > > o > > bat-adls-5: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adls-5/igt@i915_pm_freq_api@freq-reset.html> > +1 similar issue > These are not regressions. i915_pm_freq_api is not supposed to run on non-guc platforms. > > * > o > > * > > igt@i915_selftest@live@gt_heartbeat: > > o fi-kbl-soraka: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html> > -> FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html> > Failure has nothing to do with this patch. Thanks, Vinay. > * > > > Suppressed > > The following results come from untrusted machines, tests, or statuses. > They do not affect the overall result. > > * > > igt@i915_pm_rps@basic-api: > > o {bat-mtlp-8}: FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-mtlp-8/igt@i915_pm_rps@basic-api.html> > (i915#8346 > <https://gitlab.freedesktop.org/drm/intel/issues/8346>) -> > SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_pm_rps@basic-api.html> > * > > igt@i915_selftest@live@slpc: > > o {bat-mtlp-8}: NOTRUN -> FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_selftest@live@slpc.html> > +2 similar issues > > > New tests > > New tests have been introduced between IGT_7271 and IGTPW_8858: > > > New IGT tests (6) > > * > > igt@i915_pm_freq_api@freq-basic-api: > > o Statuses : 25 skip(s) > o Exec time: [0.0] s > * > > igt@i915_pm_freq_api@freq-basic-api@gt0: > > o Statuses : 13 pass(s) > o Exec time: [0.0] s > * > > igt@i915_pm_freq_api@freq-basic-api@gt1: > > o Statuses : 1 pass(s) > o Exec time: [0.0] s > * > > igt@i915_pm_freq_api@freq-reset: > > o Statuses : 25 skip(s) > o Exec time: [0.0] s > * > > igt@i915_pm_freq_api@freq-reset@gt0: > > o Statuses : 13 pass(s) > o Exec time: [0.0] s > * > > igt@i915_pm_freq_api@freq-reset@gt1: > > o Statuses : 1 pass(s) > o Exec time: [0.0] s > > > Known issues > > Here are the changes found in IGTPW_8858 that come from known issues: > > > IGT changes > > > Issues hit > > * > > {igt@i915_pm_freq_api@freq-basic-api} (NEW): > > o > > fi-glk-j4005: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-glk-j4005/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-skl-guc: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-skl-guc/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-kbl-soraka: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-soraka/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-cfl-8109u: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-8109u/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-kbl-7567u: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-7567u/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-cfl-8700k: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-8700k/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-kbl-8809g: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-8809g/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-ivb-3770: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-ivb-3770/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-elk-e7500: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-elk-e7500/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-bsw-nick: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-bsw-nick/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-kbl-guc: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-guc/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-ilk-650: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-ilk-650/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-cfl-guc: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-cfl-guc/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-kbl-x1275: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-kbl-x1275/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-hsw-4770: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-hsw-4770/igt@i915_pm_freq_api@freq-basic-api.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > * > > {igt@i915_pm_freq_api@freq-reset} (NEW): > > o > > fi-blb-e6850: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-blb-e6850/igt@i915_pm_freq_api@freq-reset.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-bsw-n3050: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-bsw-n3050/igt@i915_pm_freq_api@freq-reset.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > {bat-kbl-2}: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-kbl-2/igt@i915_pm_freq_api@freq-reset.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-skl-6600u: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-skl-6600u/igt@i915_pm_freq_api@freq-reset.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > o > > fi-apl-guc: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-apl-guc/igt@i915_pm_freq_api@freq-reset.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +1 > similar issue > > * > > igt@i915_pm_rps@basic-api: > > o > > bat-dg1-7: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg1-7/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg1-7/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-adlp-9: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlp-9/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlp-9/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-adlp-6: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlp-6/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlp-6/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-rplp-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rplp-1/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rplp-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-dg1-5: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg1-5/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg1-5/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-atsm-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-atsm-1/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-atsm-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-dg2-9: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-9/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-9/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-dg2-11: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-11/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-11/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-adln-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adln-1/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adln-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-dg2-8: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-8/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-8/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-adlm-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adlm-1/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adlm-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-rpls-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rpls-1/igt@i915_pm_rps@basic-api.html> > -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rpls-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > * > > igt@i915_selftest@live@gt_lrc: > > o bat-adln-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-adln-1/igt@i915_selftest@live@gt_lrc.html> > -> INCOMPLETE > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-adln-1/igt@i915_selftest@live@gt_lrc.html> > (i915#7609 <https://gitlab.freedesktop.org/drm/intel/issues/7609>) > * > > igt@i915_selftest@live@reset: > > o bat-rpls-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-rpls-1/igt@i915_selftest@live@reset.html> > -> ABORT > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-rpls-1/igt@i915_selftest@live@reset.html> > (i915#8384 <https://gitlab.freedesktop.org/drm/intel/issues/8384>) > * > > igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1: > > o bat-dg2-8: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html> > -> FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html> > (i915#7932 <https://gitlab.freedesktop.org/drm/intel/issues/7932>) > * > > igt@kms_pipe_crc_basic@read-crc: > > o bat-dg2-11: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-dg2-11/igt@kms_pipe_crc_basic@read-crc.html> > (i915#5354 <https://gitlab.freedesktop.org/drm/intel/issues/5354>) > > > Possible fixes > > * igt@i915_selftest@live@requests: > o {bat-mtlp-8}: ABORT > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/bat-mtlp-8/igt@i915_selftest@live@requests.html> > -> PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/bat-mtlp-8/igt@i915_selftest@live@requests.html> > > > Warnings > > * igt@i915_suspend@basic-s3-without-i915: > o fi-tgl-1115g4: INCOMPLETE > <https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7271/fi-tgl-1115g4/igt@i915_suspend@basic-s3-without-i915.html> > -> INCOMPLETE > <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/fi-tgl-1115g4/igt@i915_suspend@basic-s3-without-i915.html> > (i915#7443 <https://gitlab.freedesktop.org/drm/intel/issues/7443>) > > {name}: This element is suppressed. This means it is ignored when > computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > > Build changes > > * CI: CI-20190529 -> None > * IGT: IGT_7271 -> IGTPW_8858 > > CI-20190529: 20190529 > CI_DRM_13062: 5a0333cf630a335d7e8f60fd2b8526ed0895900c @ > git://anongit.freedesktop.org/gfx-ci/linux > IGTPW_8858: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8858/index.html > IGT_7271: d12d7eb92226e14745a80e6bdd95384913a43548 @ > https://gitlab.freedesktop.org/drm/igt-gpu-tools.git > > > Testlist changes > > +igt@i915_pm_freq_api@freq-basic-api > +igt@i915_pm_freq_api@freq-reset > [-- Attachment #2: Type: text/html, Size: 24535 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test @ 2023-04-22 1:00 Vinay Belgaumkar 2023-04-22 1:01 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 0 siblings, 1 reply; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-22 1:00 UTC (permalink / raw) To: intel-gfx, igt-dev Borrow some subtests from xe_guc_pc. Also add per GT SLPC debugfs helpers. v3: Review comments and add HAX patch v4: Modify the condition for skipping the test v5: Update the SLPC helper to per GT v6: Review comments (Ashutosh) v6: Review comments for SLPC debugfs patch (Ashutosh) v7: More comments (Ashutosh) Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Vinay Belgaumkar (4): lib/debugfs: Add per GT debugfs helpers lib: Make SLPC helper function per GT i915_pm_freq_api: Add some basic SLPC igt tests HAX: tests/i915: Try out the SLPC IGT tests lib/igt_debugfs.c | 60 ++++++++++ lib/igt_debugfs.h | 4 + lib/igt_pm.c | 34 ++++-- lib/igt_pm.h | 3 +- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++ tests/intel-ci/fast-feedback.testlist | 2 + tests/meson.build | 1 + 7 files changed, 246 insertions(+), 10 deletions(-) create mode 100644 tests/i915/i915_pm_freq_api.c -- 2.38.1 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-22 1:00 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar @ 2023-04-22 1:01 ` Vinay Belgaumkar 0 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-22 1:01 UTC (permalink / raw) To: intel-gfx, igt-dev Validate basic api for GT freq control. Also test interaction with GT reset. We skip rps tests with SLPC enabled, this will re-introduce some coverage. SLPC selftests are already covering some other workload related scenarios. v2: Rename test (Rodrigo) v3: Review comments (Ashutosh) v4: Skip when SLPC is disabled. Check for enable_guc is not sufficient as kernel config may have it but the platform doesn't actually support it. v5: Use the updated SLPC helper Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> --- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 153 insertions(+) create mode 100644 tests/i915/i915_pm_freq_api.c diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c new file mode 100644 index 00000000..f0f4e3f9 --- /dev/null +++ b/tests/i915/i915_pm_freq_api.c @@ -0,0 +1,152 @@ +// SPDX-License-Identifier: MIT +/* + * Copyright © 2023 Intel Corporation + */ + +#include <dirent.h> +#include <errno.h> +#include <fcntl.h> +#include <inttypes.h> +#include <stdlib.h> +#include <sys/stat.h> +#include <sys/syscall.h> +#include <sys/types.h> +#include <unistd.h> + +#include "drmtest.h" +#include "i915/gem.h" +#include "igt_sysfs.h" +#include "igt.h" + +IGT_TEST_DESCRIPTION("Test SLPC freq API"); +/* + * Too many intermediate components and steps before freq is adjusted + * Specially if workload is under execution, so let's wait 100 ms. + */ +#define ACT_FREQ_LATENCY_US 100000 + +static uint32_t get_freq(int dirfd, uint8_t id) +{ + uint32_t val; + + igt_assert(igt_sysfs_rps_scanf(dirfd, id, "%u", &val) == 1); + + return val; +} + +static int set_freq(int dirfd, uint8_t id, uint32_t val) +{ + return igt_sysfs_rps_printf(dirfd, id, "%u", val); +} + +static void test_freq_basic_api(int dirfd, int gt) +{ + uint32_t rpn, rp0, rpe; + + /* Save frequencies */ + rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + rp0 = get_freq(dirfd, RPS_RP0_FREQ_MHZ); + rpe = get_freq(dirfd, RPS_RP1_FREQ_MHZ); + igt_info("System min freq: %dMHz; max freq: %dMHz\n", rpn, rp0); + + /* + * Negative bound tests + * RPn is the floor + * RP0 is the ceiling + */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0 + 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0 + 1) < 0); + + /* Assert min requests are respected from rp0 to rpn */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rp0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Assert max requests are respected from rpn to rp0 */ + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rp0); + +} + +static void test_reset(int i915, int dirfd, int gt) +{ + uint32_t rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + int fd; + + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + usleep(ACT_FREQ_LATENCY_US); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Manually trigger a GT reset */ + fd = igt_debugfs_gt_open(i915, gt, "reset", O_WRONLY); + igt_require(fd >= 0); + igt_ignore_warn(write(fd, "1\n", 2)); + close(fd); + + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); +} + +igt_main +{ + int i915 = -1; + uint32_t *stash_min, *stash_max; + + igt_fixture { + int num_gts, dirfd, gt; + + i915 = drm_open_driver(DRIVER_INTEL); + igt_require_gem(i915); + /* i915_pm_rps already covers execlist path */ + igt_skip_on_f(!i915_is_slpc_enabled(i915), + "This test is supported only with SLPC enabled\n"); + + num_gts = igt_sysfs_get_num_gt(i915); + stash_min = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + stash_max = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + + /* Save curr min and max across GTs */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + stash_min[gt] = get_freq(dirfd, RPS_MIN_FREQ_MHZ); + stash_max[gt] = get_freq(dirfd, RPS_MAX_FREQ_MHZ); + } + } + + igt_describe("Test basic API for controlling min/max GT frequency"); + igt_subtest_with_dynamic_f("freq-basic-api") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_freq_basic_api(dirfd, gt); + } + + igt_describe("Test basic freq API works after a reset"); + igt_subtest_with_dynamic_f("freq-reset") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_reset(i915, dirfd, gt); + } + + igt_fixture { + int dirfd, gt; + /* Restore frequencies */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, stash_max[gt]) > 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, stash_min[gt]) > 0); + } + close(i915); + } +} diff --git a/tests/meson.build b/tests/meson.build index da31e782..46109f10 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -202,6 +202,7 @@ i915_progs = [ 'gem_workarounds', 'i915_fb_tiling', 'i915_getparams_basic', + 'i915_pm_freq_api', 'i915_hangman', 'i915_hwmon', 'i915_module_load', -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH v6 i-g-t 0/4] tests/slpc: Add basic IGT test @ 2023-04-14 19:16 Vinay Belgaumkar 2023-04-14 19:16 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 0 siblings, 1 reply; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-14 19:16 UTC (permalink / raw) To: intel-gfx, igt-dev Borrow some subtests from xe_guc_pc. Also add per GT debugfs helpers. v3: Review comments and add HAX patch v4: Modify the condition for skipping the test v5: Update the SLPC helper to per GT v6: Review comments (Ashutosh) Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Vinay Belgaumkar (4): lib/debugfs: Add per GT debugfs helpers lib: Make SLPC helper function per GT i915_pm_freq_api: Add some basic SLPC igt tests HAX: tests/i915: Try out the SLPC IGT tests lib/igt_debugfs.c | 60 ++++++++++ lib/igt_debugfs.h | 4 + lib/igt_pm.c | 36 ++++-- lib/igt_pm.h | 3 +- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++ tests/intel-ci/fast-feedback.testlist | 2 + tests/meson.build | 1 + 7 files changed, 247 insertions(+), 11 deletions(-) create mode 100644 tests/i915/i915_pm_freq_api.c -- 2.38.1 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-14 19:16 [igt-dev] [PATCH v6 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar @ 2023-04-14 19:16 ` Vinay Belgaumkar 0 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-14 19:16 UTC (permalink / raw) To: intel-gfx, igt-dev Validate basic api for GT freq control. Also test interaction with GT reset. We skip rps tests with SLPC enabled, this will re-introduce some coverage. SLPC selftests are already covering some other workload related scenarios. v2: Rename test (Rodrigo) v3: Review comments (Ashutosh) v4: Skip when SLPC is disabled. Check for enable_guc is not sufficient as kernel config may have it but the platform doesn't actually support it. v5: Use the updated SLPC helper Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> --- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 153 insertions(+) create mode 100644 tests/i915/i915_pm_freq_api.c diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c new file mode 100644 index 00000000..f0f4e3f9 --- /dev/null +++ b/tests/i915/i915_pm_freq_api.c @@ -0,0 +1,152 @@ +// SPDX-License-Identifier: MIT +/* + * Copyright © 2023 Intel Corporation + */ + +#include <dirent.h> +#include <errno.h> +#include <fcntl.h> +#include <inttypes.h> +#include <stdlib.h> +#include <sys/stat.h> +#include <sys/syscall.h> +#include <sys/types.h> +#include <unistd.h> + +#include "drmtest.h" +#include "i915/gem.h" +#include "igt_sysfs.h" +#include "igt.h" + +IGT_TEST_DESCRIPTION("Test SLPC freq API"); +/* + * Too many intermediate components and steps before freq is adjusted + * Specially if workload is under execution, so let's wait 100 ms. + */ +#define ACT_FREQ_LATENCY_US 100000 + +static uint32_t get_freq(int dirfd, uint8_t id) +{ + uint32_t val; + + igt_assert(igt_sysfs_rps_scanf(dirfd, id, "%u", &val) == 1); + + return val; +} + +static int set_freq(int dirfd, uint8_t id, uint32_t val) +{ + return igt_sysfs_rps_printf(dirfd, id, "%u", val); +} + +static void test_freq_basic_api(int dirfd, int gt) +{ + uint32_t rpn, rp0, rpe; + + /* Save frequencies */ + rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + rp0 = get_freq(dirfd, RPS_RP0_FREQ_MHZ); + rpe = get_freq(dirfd, RPS_RP1_FREQ_MHZ); + igt_info("System min freq: %dMHz; max freq: %dMHz\n", rpn, rp0); + + /* + * Negative bound tests + * RPn is the floor + * RP0 is the ceiling + */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0 + 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0 + 1) < 0); + + /* Assert min requests are respected from rp0 to rpn */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rp0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Assert max requests are respected from rpn to rp0 */ + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rp0); + +} + +static void test_reset(int i915, int dirfd, int gt) +{ + uint32_t rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + int fd; + + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + usleep(ACT_FREQ_LATENCY_US); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Manually trigger a GT reset */ + fd = igt_debugfs_gt_open(i915, gt, "reset", O_WRONLY); + igt_require(fd >= 0); + igt_ignore_warn(write(fd, "1\n", 2)); + close(fd); + + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); +} + +igt_main +{ + int i915 = -1; + uint32_t *stash_min, *stash_max; + + igt_fixture { + int num_gts, dirfd, gt; + + i915 = drm_open_driver(DRIVER_INTEL); + igt_require_gem(i915); + /* i915_pm_rps already covers execlist path */ + igt_skip_on_f(!i915_is_slpc_enabled(i915), + "This test is supported only with SLPC enabled\n"); + + num_gts = igt_sysfs_get_num_gt(i915); + stash_min = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + stash_max = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + + /* Save curr min and max across GTs */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + stash_min[gt] = get_freq(dirfd, RPS_MIN_FREQ_MHZ); + stash_max[gt] = get_freq(dirfd, RPS_MAX_FREQ_MHZ); + } + } + + igt_describe("Test basic API for controlling min/max GT frequency"); + igt_subtest_with_dynamic_f("freq-basic-api") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_freq_basic_api(dirfd, gt); + } + + igt_describe("Test basic freq API works after a reset"); + igt_subtest_with_dynamic_f("freq-reset") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_reset(i915, dirfd, gt); + } + + igt_fixture { + int dirfd, gt; + /* Restore frequencies */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, stash_max[gt]) > 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, stash_min[gt]) > 0); + } + close(i915); + } +} diff --git a/tests/meson.build b/tests/meson.build index da31e782..46109f10 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -202,6 +202,7 @@ i915_progs = [ 'gem_workarounds', 'i915_fb_tiling', 'i915_getparams_basic', + 'i915_pm_freq_api', 'i915_hangman', 'i915_hwmon', 'i915_module_load', -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH v5 i-g-t 0/4] tests/slpc: Add basic IGT test @ 2023-04-13 22:44 Vinay Belgaumkar 2023-04-13 22:44 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 0 siblings, 1 reply; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-13 22:44 UTC (permalink / raw) To: intel-gfx, igt-dev Borrow some subtests from xe_guc_pc. Also add per GT debugfs helpers. v3: Review comments and add HAX patch v4: Modify the condition for skipping the test v5: Update the SLPC helper to per GT Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Vinay Belgaumkar (4): lib/debugfs: Add per GT debugfs helpers lib: Make SLPC helper function per GT i915_pm_freq_api: Add some basic SLPC igt tests HAX: tests/i915: Try out the SLPC IGT tests lib/igt_debugfs.c | 60 ++++++++++ lib/igt_debugfs.h | 4 + lib/igt_pm.c | 20 ++-- lib/igt_pm.h | 2 +- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++ tests/i915/i915_pm_rps.c | 6 +- tests/intel-ci/fast-feedback.testlist | 2 + tests/meson.build | 1 + 8 files changed, 233 insertions(+), 14 deletions(-) create mode 100644 tests/i915/i915_pm_freq_api.c -- 2.38.1 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests 2023-04-13 22:44 [igt-dev] [PATCH v5 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar @ 2023-04-13 22:44 ` Vinay Belgaumkar 0 siblings, 0 replies; 13+ messages in thread From: Vinay Belgaumkar @ 2023-04-13 22:44 UTC (permalink / raw) To: intel-gfx, igt-dev Validate basic api for GT freq control. Also test interaction with GT reset. We skip rps tests with SLPC enabled, this will re-introduce some coverage. SLPC selftests are already covering some other workload related scenarios. v2: Rename test (Rodrigo) v3: Review comments (Ashutosh) v4: Skip when SLPC is disabled. Check for enable_guc is not sufficient as kernel config may have it but the platform doesn't actually support it. v5: Use the updated SLPC helper Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> --- tests/i915/i915_pm_freq_api.c | 152 ++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 153 insertions(+) create mode 100644 tests/i915/i915_pm_freq_api.c diff --git a/tests/i915/i915_pm_freq_api.c b/tests/i915/i915_pm_freq_api.c new file mode 100644 index 00000000..d42b3a2b --- /dev/null +++ b/tests/i915/i915_pm_freq_api.c @@ -0,0 +1,152 @@ +// SPDX-License-Identifier: MIT +/* + * Copyright © 2023 Intel Corporation + */ + +#include <dirent.h> +#include <errno.h> +#include <fcntl.h> +#include <inttypes.h> +#include <stdlib.h> +#include <sys/stat.h> +#include <sys/syscall.h> +#include <sys/types.h> +#include <unistd.h> + +#include "drmtest.h" +#include "i915/gem.h" +#include "igt_sysfs.h" +#include "igt.h" + +IGT_TEST_DESCRIPTION("Test SLPC freq API"); +/* + * Too many intermediate components and steps before freq is adjusted + * Specially if workload is under execution, so let's wait 100 ms. + */ +#define ACT_FREQ_LATENCY_US 100000 + +static uint32_t get_freq(int dirfd, uint8_t id) +{ + uint32_t val; + + igt_assert(igt_sysfs_rps_scanf(dirfd, id, "%u", &val) == 1); + + return val; +} + +static int set_freq(int dirfd, uint8_t id, uint32_t val) +{ + return igt_sysfs_rps_printf(dirfd, id, "%u", val); +} + +static void test_freq_basic_api(int dirfd, int gt) +{ + uint32_t rpn, rp0, rpe; + + /* Save frequencies */ + rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + rp0 = get_freq(dirfd, RPS_RP0_FREQ_MHZ); + rpe = get_freq(dirfd, RPS_RP1_FREQ_MHZ); + igt_info("System min freq: %dMHz; max freq: %dMHz\n", rpn, rp0); + + /* + * Negative bound tests + * RPn is the floor + * RP0 is the ceiling + */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0 + 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn - 1) < 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0 + 1) < 0); + + /* Assert min requests are respected from rp0 to rpn */ + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rp0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Assert max requests are respected from rpn to rp0 */ + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpe) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpe); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rp0) > 0); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rp0); + +} + +static void test_reset(int i915, int dirfd, int gt) +{ + uint32_t rpn = get_freq(dirfd, RPS_RPn_FREQ_MHZ); + int fd; + + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, rpn) > 0); + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, rpn) > 0); + usleep(ACT_FREQ_LATENCY_US); + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + + /* Manually trigger a GT reset */ + fd = igt_debugfs_gt_open(i915, gt, "reset", O_WRONLY); + igt_require(fd >= 0); + igt_ignore_warn(write(fd, "1\n", 2)); + close(fd); + + igt_assert(get_freq(dirfd, RPS_MIN_FREQ_MHZ) == rpn); + igt_assert(get_freq(dirfd, RPS_MAX_FREQ_MHZ) == rpn); +} + +igt_main +{ + int i915 = -1; + uint32_t *stash_min, *stash_max; + + igt_fixture { + int num_gts, dirfd, gt; + + i915 = drm_open_driver(DRIVER_INTEL); + igt_require_gem(i915); + /* i915_pm_rps already covers execlist path */ + igt_skip_on_f(!i915_is_slpc_enabled(i915, 0), + "This test is supported only with SLPC enabled\n"); + + num_gts = igt_sysfs_get_num_gt(i915); + stash_min = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + stash_max = (uint32_t*)malloc(sizeof(uint32_t) * num_gts); + + /* Save curr min and max across GTs */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + stash_min[gt] = get_freq(dirfd, RPS_MIN_FREQ_MHZ); + stash_max[gt] = get_freq(dirfd, RPS_MAX_FREQ_MHZ); + } + } + + igt_describe("Test basic API for controlling min/max GT frequency"); + igt_subtest_with_dynamic_f("freq-basic-api") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_freq_basic_api(dirfd, gt); + } + + igt_describe("Test basic freq API works after a reset"); + igt_subtest_with_dynamic_f("freq-reset") { + int dirfd, gt; + + for_each_sysfs_gt_dirfd(i915, dirfd, gt) + igt_dynamic_f("gt%u", gt) + test_reset(i915, dirfd, gt); + } + + igt_fixture { + int dirfd, gt; + /* Restore frequencies */ + for_each_sysfs_gt_dirfd(i915, dirfd, gt) { + igt_assert(set_freq(dirfd, RPS_MAX_FREQ_MHZ, stash_max[gt]) > 0); + igt_assert(set_freq(dirfd, RPS_MIN_FREQ_MHZ, stash_min[gt]) > 0); + } + close(i915); + } +} diff --git a/tests/meson.build b/tests/meson.build index da31e782..46109f10 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -202,6 +202,7 @@ i915_progs = [ 'gem_workarounds', 'i915_fb_tiling', 'i915_getparams_basic', + 'i915_pm_freq_api', 'i915_hangman', 'i915_hwmon', 'i915_module_load', -- 2.38.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
end of thread, other threads:[~2023-04-27 16:40 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-04-25 16:24 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 1/4] lib/debugfs: Add per GT debugfs helpers Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 2/4] lib: Make SLPC helper function per GT Vinay Belgaumkar 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 2023-04-26 20:40 ` Dixit, Ashutosh 2023-04-27 16:24 ` [igt-dev] [Intel-gfx] " Kamil Konieczny 2023-04-27 16:40 ` Dixit, Ashutosh 2023-04-25 16:24 ` [igt-dev] [PATCH i-g-t 4/4] HAX: tests/i915: Try out the SLPC IGT tests Vinay Belgaumkar 2023-04-25 20:54 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/slpc: Add basic IGT test (rev8) Patchwork 2023-04-25 22:44 ` Belgaumkar, Vinay -- strict thread matches above, loose matches on Subject: below -- 2023-04-22 1:00 [igt-dev] [PATCH v7 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-22 1:01 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 2023-04-14 19:16 [igt-dev] [PATCH v6 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-14 19:16 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar 2023-04-13 22:44 [igt-dev] [PATCH v5 i-g-t 0/4] tests/slpc: Add basic IGT test Vinay Belgaumkar 2023-04-13 22:44 ` [igt-dev] [PATCH i-g-t 3/4] i915_pm_freq_api: Add some basic SLPC igt tests Vinay Belgaumkar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox