From: Kamil Konieczny <kamil.konieczny@linux.intel.com>
To: igt-dev@lists.freedesktop.org
Cc: "Dominik Karol Piątkowski" <dominik.karol.piatkowski@intel.com>,
"Chris Wilson" <chris.p.wilson@linux.intel.com>,
"Janusz Krzysztofik" <janusz.krzysztofik@linux.intel.com>,
"Kamil Konieczny" <kamil.konieczny@linux.intel.com>,
"Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com>
Subject: [PATCH i-g-t v14 1/5] lib/igt_device_scan: Introduce filtering out non-PCI devices
Date: Wed, 20 Mar 2024 16:56:55 +0100 [thread overview]
Message-ID: <20240320155659.33518-2-kamil.konieczny@linux.intel.com> (raw)
In-Reply-To: <20240320155659.33518-1-kamil.konieczny@linux.intel.com>
From: Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com>
Introduced igt_device_filter_pci function that filters out non-PCI
devices from IGT devices. This will help with checking multi-GPU
tests after they skip due to detected only one GPU, in that case
one can verify it after printing what GPUs are really on PCI bus.
Such errors can happen when using wrong env IGT_DEVICE filter.
v6: extending description
v9: fix memory leak in loop (Zbigniew)
Cc: Chris Wilson <chris.p.wilson@linux.intel.com>
Cc: Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@intel.com>
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
---
lib/igt_device_scan.c | 23 +++++++++++++++++++++++
lib/igt_device_scan.h | 2 ++
2 files changed, 25 insertions(+)
diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
index fbf3fa482..9a2da3d62 100644
--- a/lib/igt_device_scan.c
+++ b/lib/igt_device_scan.c
@@ -1908,6 +1908,29 @@ const char *igt_device_filter_get(int num)
return NULL;
}
+/**
+ * igt_device_filter_pci
+ *
+ * Filter devices to PCI only.
+ *
+ * Returns PCI devices count.
+ */
+int igt_device_filter_pci(void)
+{
+ int count = 0;
+ struct igt_device *dev, *tmp;
+
+ igt_list_for_each_entry_safe(dev, tmp, &igt_devs.filtered, link)
+ if (strcmp(dev->subsystem, "pci") != 0) {
+ igt_list_del(&dev->link);
+ free(dev);
+ } else {
+ count++;
+ }
+
+ return count;
+}
+
static bool igt_device_filter_apply(const char *fstr)
{
struct igt_device *dev, *tmp;
diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
index 48690e236..908733745 100644
--- a/lib/igt_device_scan.h
+++ b/lib/igt_device_scan.h
@@ -81,6 +81,8 @@ int igt_device_filter_add(const char *filter);
void igt_device_filter_free_all(void);
const char *igt_device_filter_get(int num);
+int igt_device_filter_pci(void);
+
/* Use filter to match the device and fill card structure */
bool igt_device_card_match(const char *filter, struct igt_device_card *card);
bool igt_device_card_match_pci(const char *filter,
--
2.42.0
next prev parent reply other threads:[~2024-03-20 15:57 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-20 15:56 [PATCH i-g-t v14 0/5] introduce Xe multigpu and other multi-GPU helpers Kamil Konieczny
2024-03-20 15:56 ` Kamil Konieczny [this message]
2024-03-20 19:47 ` [PATCH i-g-t v14 1/5] lib/igt_device_scan: Introduce filtering out non-PCI devices Janusz Krzysztofik
2024-03-20 15:56 ` [PATCH i-g-t v14 2/5] lib/drmtest: Introduced drm_open_driver_another Kamil Konieczny
2024-03-20 19:49 ` Janusz Krzysztofik
2024-03-20 15:56 ` [PATCH i-g-t v14 3/5] lib/igt_multigpu: Introduce library for multi-GPU scenarios Kamil Konieczny
2024-03-20 19:49 ` Janusz Krzysztofik
2024-03-20 15:56 ` [PATCH i-g-t v14 4/5] tests/intel/xe_exec_basic: add multigpu subtests Kamil Konieczny
2024-03-20 19:49 ` Janusz Krzysztofik
2024-03-21 13:07 ` Piatkowski, Dominik Karol
2024-03-20 15:56 ` [PATCH i-g-t v14 5/5] tests/intel/gem_exec_gttfill: simplify multiGPU subtest Kamil Konieczny
2024-03-20 19:50 ` Janusz Krzysztofik
2024-03-20 18:32 ` ✓ Fi.CI.BAT: success for introduce Xe multigpu and other multi-GPU helpers (rev14) Patchwork
2024-03-20 18:33 ` ✓ CI.xeBAT: " Patchwork
2024-03-20 19:47 ` [PATCH i-g-t v14 0/5] introduce Xe multigpu and other multi-GPU helpers Janusz Krzysztofik
2024-03-21 7:46 ` ✗ Fi.CI.IGT: failure for introduce Xe multigpu and other multi-GPU helpers (rev14) Patchwork
2024-03-21 12:49 ` Kamil Konieczny
2024-03-25 12:52 ` Illipilli, TejasreeX
2024-03-25 8:28 ` ✓ Fi.CI.IGT: success " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240320155659.33518-2-kamil.konieczny@linux.intel.com \
--to=kamil.konieczny@linux.intel.com \
--cc=chris.p.wilson@linux.intel.com \
--cc=dominik.karol.piatkowski@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=janusz.krzysztofik@linux.intel.com \
--cc=zbigniew.kempczynski@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox