[PATCH v2 i-g-t 7/7] tests/xe_sriov_auto_provisioning: Add 'extended' command line option
Marcin Bernatowicz
marcin.bernatowicz at linux.intel.com
Tue Jan 14 15:08:48 UTC 2025
By default, a dynamic subtest is executed with a random num_vfs to limit
execution time. Add an 'extended' command line option to enable
iteration over all possible num_vfs.
Signed-off-by: Marcin Bernatowicz <marcin.bernatowicz at linux.intel.com>
Cc: Adam Miszczak <adam.miszczak at linux.intel.com>
Cc: Jakub Kolakowski <jakub1.kolakowski at intel.com>
Cc: Lukasz Laguna <lukasz.laguna at intel.com>
Cc: Michał Wajdeczko <michal.wajdeczko at intel.com>
Cc: Michał Winiarski <michal.winiarski at intel.com>
Cc: Narasimha C V <narasimha.c.v at intel.com>
Cc: Piotr Piórkowski <piotr.piorkowski at intel.com>
Cc: Satyanarayana K V P <satyanarayana.k.v.p at intel.com>
Cc: Tomasz Lis <tomasz.lis at intel.com>
---
tests/intel/xe_sriov_auto_provisioning.c | 40 +++++++++++++++++++++++-
1 file changed, 39 insertions(+), 1 deletion(-)
diff --git a/tests/intel/xe_sriov_auto_provisioning.c b/tests/intel/xe_sriov_auto_provisioning.c
index 1d2aa8624..e13eb3644 100644
--- a/tests/intel/xe_sriov_auto_provisioning.c
+++ b/tests/intel/xe_sriov_auto_provisioning.c
@@ -216,7 +216,30 @@ static void exclusive_ranges(int pf_fd, unsigned int num_vfs)
igt_fail_on_f(fails, "exclusive ranges check failed\n");
}
-igt_main
+static bool extended_scope;
+
+static int opts_handler(int opt, int opt_index, void *data)
+{
+ switch (opt) {
+ case 'e':
+ extended_scope = true;
+ break;
+ default:
+ return IGT_OPT_HANDLER_ERROR;
+ }
+
+ return IGT_OPT_HANDLER_SUCCESS;
+}
+
+static const struct option long_opts[] = {
+ { .name = "extended", .has_arg = false, .val = 'e', },
+ {}
+};
+
+static const char help_str[] =
+ " --extended\tRun the extended test scope\n";
+
+igt_main_args("", long_opts, help_str, opts_handler, NULL)
{
enum xe_sriov_shared_res res;
unsigned int gt;
@@ -245,6 +268,11 @@ igt_main
igt_describe("Verify that auto-provisioned resources are allocated by PF driver in fairly manner");
igt_subtest_with_dynamic("fair-allocation") {
+ if (extended_scope)
+ for_each_sriov_num_vfs(pf_fd, num_vfs)
+ igt_dynamic_f("numvfs-%d", num_vfs)
+ fair_allocation(pf_fd, num_vfs);
+
for_random_sriov_num_vfs(pf_fd, num_vfs) {
igt_dynamic_f("numvfs-random") {
igt_debug("numvfs=%u\n", num_vfs);
@@ -255,6 +283,11 @@ igt_main
igt_describe("Verify that auto-provisioned resources are released once VFs are disabled");
igt_subtest_with_dynamic("resources-released-on-vfs-disabling") {
+ if (extended_scope)
+ for_each_sriov_num_vfs(pf_fd, num_vfs)
+ igt_dynamic_f("numvfs-%d", num_vfs)
+ resources_released_on_vfs_disabling(pf_fd, num_vfs);
+
for_random_sriov_num_vfs(pf_fd, num_vfs) {
igt_dynamic_f("numvfs-random") {
igt_debug("numvfs=%u\n", num_vfs);
@@ -269,6 +302,11 @@ igt_main
igt_skip_on(total_vfs < 2);
+ if (extended_scope)
+ for_each_sriov_num_vfs(pf_fd, num_vfs)
+ igt_dynamic_f("numvfs-%d", num_vfs)
+ exclusive_ranges(pf_fd, num_vfs);
+
for_random_sriov_vf_in_range(pf_fd, 2, total_vfs, num_vfs) {
igt_dynamic_f("numvfs-random") {
igt_debug("numvfs=%u\n", num_vfs);
--
2.31.1
More information about the igt-dev
mailing list