* [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
@ 2020-12-12 9:43 Chris Wilson
2020-12-12 10:20 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
` (3 more replies)
0 siblings, 4 replies; 10+ messages in thread
From: Chris Wilson @ 2020-12-12 9:43 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev, Chris Wilson
In order to find the correct aperture size for the test, we want to pass
the test's device into the query.
Reported-by: Bruce Chang <yu.bruce.chang@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Bruce Chang <yu.bruce.chang@intel.com>
---
lib/i915/gem_mman.c | 108 +++++++++++++++++++++++++++
lib/i915/gem_mman.h | 6 ++
lib/ioctl_wrappers.c | 116 -----------------------------
lib/ioctl_wrappers.h | 5 --
tests/i915/gem_concurrent_all.c | 12 +--
tests/i915/gem_mmap.c | 4 +-
tests/i915/gem_mmap_gtt.c | 10 +--
tests/i915/gem_pwrite.c | 6 +-
tests/i915/gem_shrink.c | 2 +-
tests/i915/gem_tiled_fence_blits.c | 2 +-
tests/i915/i915_pm_rpm.c | 4 +-
tests/kms_big_fb.c | 2 +-
tests/kms_flip.c | 2 +-
tests/prime_mmap.c | 4 +-
14 files changed, 138 insertions(+), 145 deletions(-)
diff --git a/lib/i915/gem_mman.c b/lib/i915/gem_mman.c
index 93bef2bfc..703c6a5c1 100644
--- a/lib/i915/gem_mman.c
+++ b/lib/i915/gem_mman.c
@@ -27,7 +27,9 @@
#include <errno.h>
#include "igt_core.h"
+#include "igt_device.h"
#include "ioctl_wrappers.h"
+#include "intel_chipset.h"
#include "gem_mman.h"
@@ -551,3 +553,109 @@ const struct mmap_offset mmap_offset_types[] = {
{ "uc", I915_MMAP_OFFSET_UC, I915_GEM_DOMAIN_WC },
{},
};
+
+/**
+ * gem_available_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the available gpu aperture size
+ * usable in a batchbuffer.
+ *
+ * Returns: The available gtt address space size.
+ */
+uint64_t gem_available_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_available_size = 256*1024*1024,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_available_size;
+}
+
+/**
+ * gem_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the total gpu aperture size.
+ *
+ * Returns: The total gtt address space size.
+ */
+uint64_t gem_aperture_size(int fd)
+{
+ struct drm_i915_gem_context_param p = {
+ .param = 0x3
+ };
+
+ if (__gem_context_get_param(fd, &p))
+ p.value = gem_global_aperture_size(fd);
+
+ return p.value;
+}
+
+/**
+ * gem_mappable_aperture_size:
+ *
+ * Feature test macro to query the kernel for the mappable gpu aperture size.
+ * This is the area available for GTT memory mappings.
+ *
+ * Returns: The mappable gtt address space size.
+ */
+uint64_t gem_mappable_aperture_size(int fd)
+{
+ struct pci_device *pci_dev = igt_device_get_pci_device(fd);
+ int bar;
+
+ if (intel_gen(pci_dev->device_id) < 3)
+ bar = 0;
+ else
+ bar = 2;
+
+ return pci_dev->regions[bar].size;
+}
+
+/**
+ * gem_global_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the global gpu aperture size.
+ * This is the area available for the kernel to perform address translations.
+ *
+ * Returns: The gtt address space size.
+ */
+uint64_t gem_global_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_size = 256*1024*1024
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_size;
+}
+
+/**
+ * gem_available_fences:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the number of available fences
+ * usable in a batchbuffer. Only relevant for pre-gen4.
+ *
+ * Returns: The number of available fences.
+ */
+int gem_available_fences(int fd)
+{
+ int num_fences = 0;
+ struct drm_i915_getparam gp = {
+ gp.param = I915_PARAM_NUM_FENCES_AVAIL,
+ gp.value = &num_fences,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
+ errno = 0;
+
+ return num_fences;
+}
diff --git a/lib/i915/gem_mman.h b/lib/i915/gem_mman.h
index 2c4a7a00b..ec2899ffe 100644
--- a/lib/i915/gem_mman.h
+++ b/lib/i915/gem_mman.h
@@ -109,5 +109,11 @@ bool gem_has_mmap_offset_type(int fd, const struct mmap_offset *t);
(__t)++) \
for_each_if(gem_has_mmap_offset_type((fd), (__t)))
+uint64_t gem_available_aperture_size(int fd);
+uint64_t gem_aperture_size(int fd);
+uint64_t gem_global_aperture_size(int fd);
+uint64_t gem_mappable_aperture_size(int fd);
+int gem_available_fences(int fd);
+
#endif /* GEM_MMAN_H */
diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 06431ce6c..a928f894f 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -782,31 +782,6 @@ bool gem_engine_reset_enabled(int fd)
return gem_gpu_reset_type(fd) > 1;
}
-/**
- * gem_available_fences:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the number of available fences
- * usable in a batchbuffer. Only relevant for pre-gen4.
- *
- * Returns: The number of available fences.
- */
-int gem_available_fences(int fd)
-{
- int num_fences;
- struct drm_i915_getparam gp;
-
- memset(&gp, 0, sizeof(gp));
- gp.param = I915_PARAM_NUM_FENCES_AVAIL;
- gp.value = &num_fences;
-
- num_fences = 0;
- ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
- errno = 0;
-
- return num_fences;
-}
-
bool gem_has_llc(int fd)
{
int has_llc;
@@ -929,97 +904,6 @@ uint64_t gem_total_stolen_size(int fd)
return aperture.stolen_total_size;
}
-/**
- * gem_available_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the available gpu aperture size
- * usable in a batchbuffer.
- *
- * Returns: The available gtt address space size.
- */
-uint64_t gem_available_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_available_size;
-}
-
-/**
- * gem_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the total gpu aperture size.
- *
- * Returns: The total gtt address space size.
- */
-uint64_t gem_aperture_size(int fd)
-{
- uint64_t aperture_size = 0;
- struct drm_i915_gem_context_param p;
-
- memset(&p, 0, sizeof(p));
- p.param = 0x3;
- if (__gem_context_get_param(fd, &p) == 0) {
- aperture_size = p.value;
- } else {
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
-
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
- aperture_size = aperture.aper_size;
- }
-
- return aperture_size;
-}
-
-/**
- * gem_mappable_aperture_size:
- *
- * Feature test macro to query the kernel for the mappable gpu aperture size.
- * This is the area available for GTT memory mappings.
- *
- * Returns: The mappable gtt address space size.
- */
-uint64_t gem_mappable_aperture_size(void)
-{
- struct pci_device *pci_dev = intel_get_pci_device();
- int bar;
-
- if (intel_gen(pci_dev->device_id) < 3)
- bar = 0;
- else
- bar = 2;
-
- return pci_dev->regions[bar].size;
-}
-
-/**
- * gem_global_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the global gpu aperture size.
- * This is the area available for the kernel to perform address translations.
- *
- * Returns: The gtt address space size.
- */
-uint64_t gem_global_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_size;
-}
-
/**
* gem_has_softpin:
* @fd: open i915 drm file descriptor
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index b76bea564..07879ae96 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -117,12 +117,7 @@ bool gem_uses_full_ppgtt(int fd);
int gem_gpu_reset_type(int fd);
bool gem_gpu_reset_enabled(int fd);
bool gem_engine_reset_enabled(int fd);
-int gem_available_fences(int fd);
uint64_t gem_total_stolen_size(int fd);
-uint64_t gem_available_aperture_size(int fd);
-uint64_t gem_aperture_size(int fd);
-uint64_t gem_global_aperture_size(int fd);
-uint64_t gem_mappable_aperture_size(void);
bool gem_has_softpin(int fd);
bool gem_has_exec_fence(int fd);
diff --git a/tests/i915/gem_concurrent_all.c b/tests/i915/gem_concurrent_all.c
index 9ea94125e..da850a104 100644
--- a/tests/i915/gem_concurrent_all.c
+++ b/tests/i915/gem_concurrent_all.c
@@ -1828,7 +1828,7 @@ igt_main
c->name, s->name, "small");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size()/4,
+ count = num_buffers(gem_mappable_aperture_size(fd)/4,
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1839,7 +1839,7 @@ igt_main
c->name, s->name, "thrash");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1871,7 +1871,7 @@ igt_main
c->name, s->name, "shrink");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
igt_fork_shrink_helper(fd);
@@ -1887,8 +1887,8 @@ igt_main
c->name, s->name, "swap");
igt_subtest_group {
igt_fixture {
- if (intel_get_avail_ram_mb() > gem_mappable_aperture_size()/(1024*1024)) {
- pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size()/(1024*1024);
+ if (intel_get_avail_ram_mb() > gem_mappable_aperture_size(fd)/(1024*1024)) {
+ pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size(fd)/(1024*1024);
igt_debug("Pinning %lld MiB\n", (long long)pin_sz);
pin_sz *= 1024 * 1024;
@@ -1902,7 +1902,7 @@ igt_main
igt_require(pinned);
}
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM | CHECK_SWAP);
}
run_modes(name, c, modes, s, count);
diff --git a/tests/i915/gem_mmap.c b/tests/i915/gem_mmap.c
index 8bad9b14e..60a64c134 100644
--- a/tests/i915/gem_mmap.c
+++ b/tests/i915/gem_mmap.c
@@ -53,10 +53,10 @@ test_huge_bo(int huge)
switch (huge) {
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_mmap_gtt.c b/tests/i915/gem_mmap_gtt.c
index 61fbc5bc7..528a7c726 100644
--- a/tests/i915/gem_mmap_gtt.c
+++ b/tests/i915/gem_mmap_gtt.c
@@ -905,7 +905,7 @@ test_huge_bo(int fd, int huge, int tiling)
switch (huge) {
case -1:
- size = gem_mappable_aperture_size() / 2;
+ size = gem_mappable_aperture_size(fd) / 2;
/* Power of two fence size, natural fence
* alignment, and the guard page at the end
@@ -920,7 +920,7 @@ test_huge_bo(int fd, int huge, int tiling)
size /= 2;
break;
case 0:
- size = gem_mappable_aperture_size() + PAGE_SIZE;
+ size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
default:
size = gem_global_aperture_size(fd) + PAGE_SIZE;
@@ -1001,13 +1001,13 @@ test_huge_copy(int fd, int huge, int tiling_a, int tiling_b, int ncpus)
switch (huge) {
case -2:
- huge_object_size = gem_mappable_aperture_size() / 4;
+ huge_object_size = gem_mappable_aperture_size(fd) / 4;
break;
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_global_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_pwrite.c b/tests/i915/gem_pwrite.c
index d2dcc95e8..f76d2bc70 100644
--- a/tests/i915/gem_pwrite.c
+++ b/tests/i915/gem_pwrite.c
@@ -130,7 +130,7 @@ static void test_big_cpu(int fd, int scale, unsigned flags)
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -192,7 +192,7 @@ static void test_big_gtt(int fd, int scale, unsigned flags)
igt_require(gem_mmap__has_wc(fd));
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -257,7 +257,7 @@ static void test_random(int fd)
gem_require_mmap_wc(fd);
size = min(intel_get_total_ram_mb() / 2,
- gem_mappable_aperture_size() + 4096);
+ gem_mappable_aperture_size(fd) + 4096);
intel_require_memory(1, size, CHECK_RAM);
handle = gem_create(fd, size);
diff --git a/tests/i915/gem_shrink.c b/tests/i915/gem_shrink.c
index dba62c8fa..023db8c56 100644
--- a/tests/i915/gem_shrink.c
+++ b/tests/i915/gem_shrink.c
@@ -439,7 +439,7 @@ igt_main
* we expect the shrinker to start purging objects,
* and possibly fail.
*/
- alloc_size = gem_mappable_aperture_size() / 2;
+ alloc_size = gem_mappable_aperture_size(fd) / 2;
num_processes = 1 + (mem_size / (alloc_size >> 20));
igt_info("Using %d processes and %'lluMiB per process\n",
diff --git a/tests/i915/gem_tiled_fence_blits.c b/tests/i915/gem_tiled_fence_blits.c
index 0a633d91b..28beea898 100644
--- a/tests/i915/gem_tiled_fence_blits.c
+++ b/tests/i915/gem_tiled_fence_blits.c
@@ -225,7 +225,7 @@ igt_main
gem_require_blitter(fd);
gem_require_mappable_ggtt(fd);
- count = gem_mappable_aperture_size(); /* thrash fences! */
+ count = gem_mappable_aperture_size(fd); /* thrash fences! */
if (count >> 32)
count = MAX_32b;
count = 3 + count / (1024 * 1024);
diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
index 6d46c320c..6321dd403 100644
--- a/tests/i915/i915_pm_rpm.c
+++ b/tests/i915/i915_pm_rpm.c
@@ -1419,7 +1419,7 @@ static void gem_evict_pwrite_subtest(void)
unsigned int num_trash_bos, n;
uint32_t buf;
- num_trash_bos = gem_mappable_aperture_size() / (1024*1024) + 1;
+ num_trash_bos = gem_mappable_aperture_size(drm_fd) / (1024*1024) + 1;
trash_bos = malloc(num_trash_bos * sizeof(*trash_bos));
igt_assert(trash_bos);
@@ -1463,7 +1463,7 @@ static bool device_in_pci_d3(void)
uint16_t val;
int rc;
- rc = pci_device_cfg_read_u16(intel_get_pci_device(), &val, 0xd4);
+ rc = pci_device_cfg_read_u16(igt_device_get_pci_device(drm_fd), &val, 0xd4);
igt_assert_eq(rc, 0);
igt_debug("%s: PCI D3 state=%d\n", __func__, val & 0x3);
diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 02e9915ba..8794ace08 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -645,7 +645,7 @@ igt_main
data.ram_size = intel_get_total_ram_mb() << 20;
data.aper_size = gem_aperture_size(data.drm_fd);
- data.mappable_size = gem_mappable_aperture_size();
+ data.mappable_size = gem_mappable_aperture_size(data.drm_fd);
igt_info("RAM: %"PRIu64" MiB, GPU address space: %"PRId64" MiB, GGTT mappable size: %"PRId64" MiB\n",
data.ram_size >> 20, data.aper_size >> 20,
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index 51b9ac950..0f0565cf6 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -1282,7 +1282,7 @@ static void __run_test_on_crtc_set(struct test_output *o, int *crtc_idxs,
/* 256 MB is usually the maximum mappable aperture,
* (make it 4x times that to ensure failure) */
if (o->flags & TEST_BO_TOOBIG) {
- bo_size = 4*gem_mappable_aperture_size();
+ bo_size = 4*gem_mappable_aperture_size(drm_fd);
igt_require(bo_size < gem_global_aperture_size(drm_fd));
}
diff --git a/tests/prime_mmap.c b/tests/prime_mmap.c
index 143342410..7c43ced85 100644
--- a/tests/prime_mmap.c
+++ b/tests/prime_mmap.c
@@ -447,8 +447,8 @@ test_aperture_limit(void)
char *ptr1, *ptr2;
uint32_t handle1, handle2;
/* Two buffers the sum of which > mappable aperture */
- uint64_t size1 = (gem_mappable_aperture_size() * 7) / 8;
- uint64_t size2 = (gem_mappable_aperture_size() * 3) / 8;
+ uint64_t size1 = (gem_mappable_aperture_size(fd) * 7) / 8;
+ uint64_t size2 = (gem_mappable_aperture_size(fd) * 3) / 8;
handle1 = gem_create(fd, size1);
fill_bo(handle1, BO_SIZE);
--
2.29.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-12 9:43 [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size() Chris Wilson
@ 2020-12-12 10:20 ` Patchwork
2020-12-12 11:20 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2020-12-12 10:20 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
[-- Attachment #1.1: Type: text/plain, Size: 4096 bytes --]
== Series Details ==
Series: lib: Pass device fd to gem_mmappable_aperture_size()
URL : https://patchwork.freedesktop.org/series/84858/
State : success
== Summary ==
CI Bug Log - changes from IGT_5891 -> IGTPW_5276
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
Known issues
------------
Here are the changes found in IGTPW_5276 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_cs_nop@nop-gfx0:
- fi-apl-guc: NOTRUN -> [SKIP][1] ([fdo#109271]) +17 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-apl-guc/igt@amdgpu/amd_cs_nop@nop-gfx0.html
* igt@i915_pm_rpm@module-reload:
- fi-byt-j1900: [PASS][2] -> [INCOMPLETE][3] ([i915#142] / [i915#2405])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html
* igt@kms_chamelium@dp-crc-fast:
- fi-kbl-7500u: [PASS][4] -> [DMESG-WARN][5] ([i915#165] / [i915#262])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
* igt@prime_vgem@basic-write:
- fi-tgl-y: [PASS][6] -> [DMESG-WARN][7] ([i915#402]) +2 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/fi-tgl-y/igt@prime_vgem@basic-write.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-tgl-y/igt@prime_vgem@basic-write.html
* igt@runner@aborted:
- fi-bdw-5557u: NOTRUN -> [FAIL][8] ([i915#2029] / [i915#2722])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-bdw-5557u/igt@runner@aborted.html
- fi-byt-j1900: NOTRUN -> [FAIL][9] ([i915#1814])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-byt-j1900/igt@runner@aborted.html
#### Possible fixes ####
* igt@gem_mmap_gtt@basic:
- fi-tgl-y: [DMESG-WARN][10] ([i915#402]) -> [PASS][11] +2 similar issues
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/fi-tgl-y/igt@gem_mmap_gtt@basic.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-tgl-y/igt@gem_mmap_gtt@basic.html
* igt@i915_selftest@live@gt_timelines:
- fi-apl-guc: [INCOMPLETE][12] ([i915#2750]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/fi-apl-guc/igt@i915_selftest@live@gt_timelines.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/fi-apl-guc/igt@i915_selftest@live@gt_timelines.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#142]: https://gitlab.freedesktop.org/drm/intel/issues/142
[i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165
[i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
[i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029
[i915#2405]: https://gitlab.freedesktop.org/drm/intel/issues/2405
[i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262
[i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722
[i915#2750]: https://gitlab.freedesktop.org/drm/intel/issues/2750
[i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
Participating hosts (42 -> 38)
------------------------------
Missing (4): fi-dg1-1 fi-icl-u2 fi-bdw-samus fi-hsw-4200u
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5891 -> IGTPW_5276
CI-20190529: 20190529
CI_DRM_9478: 94cf3a4cc350324f21728c70954c46e535405c87 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_5276: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
IGT_5891: d14fcf9235c223c29449ef907579e97086b2d4e5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
[-- Attachment #1.2: Type: text/html, Size: 4942 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-12 9:43 [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size() Chris Wilson
2020-12-12 10:20 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2020-12-12 11:20 ` Patchwork
2020-12-14 18:45 ` [igt-dev] " Chang, Yu bruce
2020-12-14 19:05 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib: Pass device fd to gem_mmappable_aperture_size() (rev2) Patchwork
3 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2020-12-12 11:20 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
[-- Attachment #1.1: Type: text/plain, Size: 30014 bytes --]
== Series Details ==
Series: lib: Pass device fd to gem_mmappable_aperture_size()
URL : https://patchwork.freedesktop.org/series/84858/
State : success
== Summary ==
CI Bug Log - changes from IGT_5891_full -> IGTPW_5276_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
Known issues
------------
Here are the changes found in IGTPW_5276_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_persistence@process:
- shard-hsw: NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#1099])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw4/igt@gem_ctx_persistence@process.html
* igt@gem_eio@in-flight-suspend:
- shard-tglb: [PASS][2] -> [DMESG-WARN][3] ([i915#1037] / [i915#1436] / [i915#1602] / [i915#1887] / [i915#2411])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb2/igt@gem_eio@in-flight-suspend.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb7/igt@gem_eio@in-flight-suspend.html
- shard-hsw: [PASS][4] -> [DMESG-WARN][5] ([i915#1037] / [i915#2637])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw4/igt@gem_eio@in-flight-suspend.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw2/igt@gem_eio@in-flight-suspend.html
- shard-kbl: [PASS][6] -> [INCOMPLETE][7] ([i915#1037])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl3/igt@gem_eio@in-flight-suspend.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl1/igt@gem_eio@in-flight-suspend.html
- shard-apl: [PASS][8] -> [DMESG-WARN][9] ([i915#1037] / [i915#2635])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl2/igt@gem_eio@in-flight-suspend.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl4/igt@gem_eio@in-flight-suspend.html
- shard-glk: [PASS][10] -> [DMESG-WARN][11] ([i915#1037] / [i915#2635])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk5/igt@gem_eio@in-flight-suspend.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk9/igt@gem_eio@in-flight-suspend.html
- shard-iclb: [PASS][12] -> [DMESG-WARN][13] ([i915#1037])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb1/igt@gem_eio@in-flight-suspend.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb1/igt@gem_eio@in-flight-suspend.html
* igt@gem_exec_whisper@basic-fds-forked:
- shard-glk: [PASS][14] -> [DMESG-WARN][15] ([i915#118] / [i915#95])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk6/igt@gem_exec_whisper@basic-fds-forked.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk8/igt@gem_exec_whisper@basic-fds-forked.html
* igt@gem_softpin@evict-snoop-interruptible:
- shard-tglb: NOTRUN -> [SKIP][16] ([fdo#109312])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb2/igt@gem_softpin@evict-snoop-interruptible.html
* igt@gen9_exec_parse@allowed-all:
- shard-glk: [PASS][17] -> [DMESG-WARN][18] ([i915#1436] / [i915#716])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk2/igt@gen9_exec_parse@allowed-all.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk3/igt@gen9_exec_parse@allowed-all.html
* igt@i915_pm_rpm@dpms-mode-unset-lpsp:
- shard-tglb: [PASS][19] -> [SKIP][20] ([i915#579]) +1 similar issue
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb2/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb7/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
* igt@i915_pm_rpm@modeset-non-lpsp-stress:
- shard-tglb: NOTRUN -> [SKIP][21] ([fdo#111644] / [i915#1397] / [i915#2411])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb6/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
- shard-iclb: NOTRUN -> [SKIP][22] ([fdo#110892])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb1/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
* igt@i915_pm_rpm@system-suspend-modeset:
- shard-glk: [PASS][23] -> [SKIP][24] ([fdo#109271])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk2/igt@i915_pm_rpm@system-suspend-modeset.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk9/igt@i915_pm_rpm@system-suspend-modeset.html
- shard-iclb: [PASS][25] -> [SKIP][26] ([i915#579]) +1 similar issue
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb6/igt@i915_pm_rpm@system-suspend-modeset.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb1/igt@i915_pm_rpm@system-suspend-modeset.html
- shard-apl: [PASS][27] -> [SKIP][28] ([fdo#109271])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl7/igt@i915_pm_rpm@system-suspend-modeset.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl4/igt@i915_pm_rpm@system-suspend-modeset.html
- shard-kbl: [PASS][29] -> [SKIP][30] ([fdo#109271])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl4/igt@i915_pm_rpm@system-suspend-modeset.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl1/igt@i915_pm_rpm@system-suspend-modeset.html
- shard-hsw: [PASS][31] -> [SKIP][32] ([fdo#109271])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw1/igt@i915_pm_rpm@system-suspend-modeset.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw2/igt@i915_pm_rpm@system-suspend-modeset.html
* igt@kms_atomic_transition@3x-modeset-transitions-fencing:
- shard-hsw: NOTRUN -> [SKIP][33] ([fdo#109271]) +9 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw6/igt@kms_atomic_transition@3x-modeset-transitions-fencing.html
* igt@kms_big_joiner@basic:
- shard-tglb: NOTRUN -> [SKIP][34] ([i915#2705]) +1 similar issue
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb3/igt@kms_big_joiner@basic.html
- shard-kbl: NOTRUN -> [SKIP][35] ([fdo#109271] / [i915#2705])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl2/igt@kms_big_joiner@basic.html
- shard-iclb: NOTRUN -> [SKIP][36] ([i915#2705])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb6/igt@kms_big_joiner@basic.html
- shard-glk: NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#2705])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk9/igt@kms_big_joiner@basic.html
- shard-apl: NOTRUN -> [SKIP][38] ([fdo#109271] / [i915#2705])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl2/igt@kms_big_joiner@basic.html
* igt@kms_chamelium@dp-mode-timings:
- shard-apl: NOTRUN -> [SKIP][39] ([fdo#109271] / [fdo#111827]) +3 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl1/igt@kms_chamelium@dp-mode-timings.html
* igt@kms_color_chamelium@pipe-d-ctm-max:
- shard-hsw: NOTRUN -> [SKIP][40] ([fdo#109271] / [fdo#111827])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw1/igt@kms_color_chamelium@pipe-d-ctm-max.html
- shard-tglb: NOTRUN -> [SKIP][41] ([fdo#109284] / [fdo#111827])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb8/igt@kms_color_chamelium@pipe-d-ctm-max.html
- shard-kbl: NOTRUN -> [SKIP][42] ([fdo#109271] / [fdo#111827])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@kms_color_chamelium@pipe-d-ctm-max.html
- shard-glk: NOTRUN -> [SKIP][43] ([fdo#109271] / [fdo#111827]) +1 similar issue
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk2/igt@kms_color_chamelium@pipe-d-ctm-max.html
- shard-iclb: NOTRUN -> [SKIP][44] ([fdo#109278] / [fdo#109284] / [fdo#111827])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb8/igt@kms_color_chamelium@pipe-d-ctm-max.html
* igt@kms_cursor_legacy@pipe-d-single-bo:
- shard-apl: NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#533])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl1/igt@kms_cursor_legacy@pipe-d-single-bo.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-kbl: [PASS][46] -> [INCOMPLETE][47] ([i915#155] / [i915#180] / [i915#636])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl2/igt@kms_fbcon_fbt@fbc-suspend.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-tglb: [PASS][48] -> [FAIL][49] ([i915#2598])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb7/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb8/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1:
- shard-glk: [PASS][50] -> [FAIL][51] ([i915#79])
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk6/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk7/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs:
- shard-kbl: NOTRUN -> [SKIP][52] ([fdo#109271] / [i915#2672])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html
- shard-apl: NOTRUN -> [SKIP][53] ([fdo#109271] / [i915#2672])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html
- shard-glk: NOTRUN -> [SKIP][54] ([fdo#109271] / [i915#2672])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk5/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html
- shard-iclb: NOTRUN -> [SKIP][55] ([i915#2587])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb5/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt:
- shard-kbl: NOTRUN -> [SKIP][56] ([fdo#109271]) +6 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-cpu:
- shard-iclb: NOTRUN -> [SKIP][57] ([fdo#109280]) +2 similar issues
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc:
- shard-tglb: NOTRUN -> [SKIP][58] ([fdo#111825]) +3 similar issues
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html
* igt@kms_hdmi_inject@inject-audio:
- shard-tglb: [PASS][59] -> [SKIP][60] ([i915#433])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb2/igt@kms_hdmi_inject@inject-audio.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb1/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
- shard-glk: NOTRUN -> [FAIL][61] ([fdo#108145] / [i915#265])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk2/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html
* igt@kms_psr2_su@frontbuffer:
- shard-glk: NOTRUN -> [SKIP][62] ([fdo#109271]) +23 similar issues
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk1/igt@kms_psr2_su@frontbuffer.html
- shard-iclb: [PASS][63] -> [SKIP][64] ([fdo#109642] / [fdo#111068])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb1/igt@kms_psr2_su@frontbuffer.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: NOTRUN -> [SKIP][65] ([fdo#109441])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb8/igt@kms_psr@psr2_cursor_render.html
* igt@kms_vblank@pipe-b-ts-continuation-suspend:
- shard-apl: [PASS][66] -> [DMESG-WARN][67] ([i915#1602] / [i915#2635])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl7/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
- shard-iclb: [PASS][68] -> [DMESG-WARN][69] ([i915#1602])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb7/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
- shard-glk: [PASS][70] -> [DMESG-WARN][71] ([i915#1602] / [i915#2635])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk6/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
- shard-hsw: [PASS][72] -> [DMESG-WARN][73] ([i915#2637])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw1/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw1/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
- shard-kbl: [PASS][74] -> [DMESG-WARN][75] ([i915#1602])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
- shard-tglb: [PASS][76] -> [INCOMPLETE][77] ([i915#1436] / [i915#1798] / [i915#1982] / [i915#456])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
* igt@kms_vblank@pipe-c-ts-continuation-suspend:
- shard-kbl: [PASS][78] -> [DMESG-WARN][79] ([i915#180])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl2/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
* igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame:
- shard-apl: NOTRUN -> [SKIP][80] ([fdo#109271]) +47 similar issues
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl3/igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame.html
- shard-tglb: NOTRUN -> [SKIP][81] ([i915#2530])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb1/igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame.html
- shard-iclb: NOTRUN -> [SKIP][82] ([i915#2530])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb4/igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame.html
#### Possible fixes ####
* igt@gem_exec_reloc@basic-many-active@rcs0:
- shard-hsw: [FAIL][83] ([i915#2389]) -> [PASS][84]
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw4/igt@gem_exec_reloc@basic-many-active@rcs0.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw6/igt@gem_exec_reloc@basic-many-active@rcs0.html
* igt@gem_exec_whisper@basic-forked:
- shard-glk: [DMESG-WARN][85] ([i915#118] / [i915#95]) -> [PASS][86]
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk4/igt@gem_exec_whisper@basic-forked.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk8/igt@gem_exec_whisper@basic-forked.html
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-edp:
- shard-iclb: [FAIL][87] ([i915#2768]) -> [PASS][88]
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb5/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-edp.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb8/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-edp.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-hsw: [INCOMPLETE][89] ([i915#151]) -> [PASS][90]
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw6/igt@i915_pm_rpm@system-suspend-execbuf.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw4/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-hsw: [FAIL][91] ([i915#96]) -> [PASS][92]
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw8/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw2/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
- shard-apl: [FAIL][93] ([i915#49]) -> [PASS][94]
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
- shard-kbl: [FAIL][95] ([i915#49]) -> [PASS][96]
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-gtt:
- shard-glk: [FAIL][97] ([i915#49]) -> [PASS][98] +1 similar issue
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-gtt.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-gtt.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
- shard-iclb: [INCOMPLETE][99] ([i915#1185] / [i915#250]) -> [PASS][100]
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb5/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
- shard-kbl: [DMESG-WARN][101] -> [PASS][102]
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
- shard-hsw: [DMESG-WARN][103] ([i915#2637]) -> [PASS][104]
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
- shard-glk: [DMESG-WARN][105] ([i915#2635]) -> [PASS][106]
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
- shard-apl: [DMESG-WARN][107] ([i915#2635]) -> [PASS][108]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
* igt@kms_psr@psr2_cursor_mmap_cpu:
- shard-iclb: [SKIP][109] ([fdo#109441]) -> [PASS][110] +1 similar issue
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb8/igt@kms_psr@psr2_cursor_mmap_cpu.html
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html
* igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend:
- shard-tglb: [INCOMPLETE][111] ([i915#1436] / [i915#1602] / [i915#1887] / [i915#1982] / [i915#2411]) -> [PASS][112]
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb3/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb5/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html
* igt@perf@polling-parameterized:
- shard-tglb: [FAIL][113] ([i915#1542]) -> [PASS][114]
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-tglb5/igt@perf@polling-parameterized.html
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-tglb7/igt@perf@polling-parameterized.html
#### Warnings ####
* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-iclb: [SKIP][115] ([i915#588]) -> [SKIP][116] ([i915#658])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-iclb5/igt@i915_pm_dc@dc3co-vpb-simulation.html
* igt@kms_content_protection@uevent:
- shard-apl: [FAIL][117] -> [FAIL][118] ([i915#2105])
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl4/igt@kms_content_protection@uevent.html
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl1/igt@kms_content_protection@uevent.html
* igt@runner@aborted:
- shard-hsw: [FAIL][119] ([i915#2295]) -> ([FAIL][120], [FAIL][121]) ([i915#1436] / [i915#2295] / [i915#483])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-hsw4/igt@runner@aborted.html
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw1/igt@runner@aborted.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-hsw2/igt@runner@aborted.html
- shard-kbl: ([FAIL][122], [FAIL][123]) ([i915#1814] / [i915#2295] / [i915#2722] / [i915#483]) -> ([FAIL][124], [FAIL][125], [FAIL][126], [FAIL][127]) ([i915#1814] / [i915#2295] / [i915#2722] / [i915#483] / [i915#602] / [i915#92])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl1/igt@runner@aborted.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-kbl7/igt@runner@aborted.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@runner@aborted.html
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@runner@aborted.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl1/igt@runner@aborted.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-kbl4/igt@runner@aborted.html
- shard-apl: ([FAIL][128], [FAIL][129]) ([i915#1814] / [i915#2295] / [i915#2722]) -> ([FAIL][130], [FAIL][131], [FAIL][132]) ([i915#1610] / [i915#1814] / [i915#2295] / [i915#2722])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl1/igt@runner@aborted.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-apl3/igt@runner@aborted.html
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl4/igt@runner@aborted.html
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl4/igt@runner@aborted.html
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-apl7/igt@runner@aborted.html
- shard-glk: ([FAIL][133], [FAIL][134]) ([i915#1814] / [i915#2295] / [i915#2722] / [k.org#202321]) -> ([FAIL][135], [FAIL][136], [FAIL][137], [FAIL][138]) ([i915#1814] / [i915#2295] / [i915#2722] / [i915#483] / [k.org#202321])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk9/igt@runner@aborted.html
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5891/shard-glk1/igt@runner@aborted.html
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk3/igt@runner@aborted.html
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk9/igt@runner@aborted.html
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk2/igt@runner@aborted.html
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/shard-glk7/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110892]: https://bugs.freedesktop.org/show_bug.cgi?id=110892
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1037]: https://gitlab.freedesktop.org/drm/intel/issues/1037
[i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#1185]: https://gitlab.freedesktop.org/drm/intel/issues/1185
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
[i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151
[i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
[i915#155]: https://gitlab.freedesktop.org/drm/intel/issues/155
[i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
[i915#1610]: https://gitlab.freedesktop.org/drm/intel/issues/1610
[i915#1798]: https://gitlab.freedesktop.org/drm/intel/issues/1798
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
[i915#1887]: https://gitlab.freedesktop.org/drm/intel/issues/1887
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2105]: https://gitlab.freedesktop.org/drm/intel/issues/2105
[i915#2295]: https://gitlab.freedesktop.org/drm/intel/issues/2295
[i915#2389]: https://gitlab.freedesktop.org/drm/intel/issues/2389
[i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
[i915#250]: https://gitlab.freedesktop.org/drm/intel/issues/250
[i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2598]: https://gitlab.freedesktop.org/drm/intel/issues/2598
[i915#2635]: https://gitlab.freedesktop.org/drm/intel/issues/2635
[i915#2637]: https://gitlab.freedesktop.org/drm/intel/issues/2637
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722
[i915#2768]: https://gitlab.freedesktop.org/drm/intel/issues/2768
[i915#2795]: https://gitlab.freedesktop.org/drm/intel/issues/2795
[i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
[i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456
[i915#483]: https://gitlab.freedesktop.org/drm/intel/issues/483
[i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#579]: https://gitlab.freedesktop.org/drm/intel/issues/579
[i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
[i915#602]: https://gitlab.freedesktop.org/drm/intel/issues/602
[i915#636]: https://gitlab.freedesktop.org/drm/intel/issues/636
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
[i915#96]: https://gitlab.freedesktop.org/drm/intel/issues/96
[k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321
Participating hosts (8 -> 8)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5891 -> IGTPW_5276
CI-20190529: 20190529
CI_DRM_9478: 94cf3a4cc350324f21728c70954c46e535405c87 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_5276: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
IGT_5891: d14fcf9235c223c29449ef907579e97086b2d4e5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5276/index.html
[-- Attachment #1.2: Type: text/html, Size: 37980 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-12 9:43 [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size() Chris Wilson
@ 2020-12-14 18:45 ` Chang, Yu bruce
2020-12-12 11:20 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 10+ messages in thread
From: Chang, Yu bruce @ 2020-12-14 18:45 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
[-- Attachment #1.1: Type: text/plain, Size: 20902 bytes --]
Some minor comments as below.
Reviewed-by: Bruce Chang <yu.bruce.chang@intel.com>
________________________________
From: Chris Wilson <chris@chris-wilson.co.uk>
Sent: Saturday, December 12, 2020 1:43 AM
To: intel-gfx@lists.freedesktop.org
Cc: igt-dev@lists.freedesktop.org; Chris Wilson; Chang, Yu bruce
Subject: [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
In order to find the correct aperture size for the test, we want to pass
the test's device into the query.
Reported-by: Bruce Chang <yu.bruce.chang@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Bruce Chang <yu.bruce.chang@intel.com>
---
lib/i915/gem_mman.c | 108 +++++++++++++++++++++++++++
lib/i915/gem_mman.h | 6 ++
lib/ioctl_wrappers.c | 116 -----------------------------
lib/ioctl_wrappers.h | 5 --
tests/i915/gem_concurrent_all.c | 12 +--
tests/i915/gem_mmap.c | 4 +-
tests/i915/gem_mmap_gtt.c | 10 +--
tests/i915/gem_pwrite.c | 6 +-
tests/i915/gem_shrink.c | 2 +-
tests/i915/gem_tiled_fence_blits.c | 2 +-
tests/i915/i915_pm_rpm.c | 4 +-
tests/kms_big_fb.c | 2 +-
tests/kms_flip.c | 2 +-
tests/prime_mmap.c | 4 +-
14 files changed, 138 insertions(+), 145 deletions(-)
diff --git a/lib/i915/gem_mman.c b/lib/i915/gem_mman.c
index 93bef2bfc..703c6a5c1 100644
--- a/lib/i915/gem_mman.c
+++ b/lib/i915/gem_mman.c
@@ -27,7 +27,9 @@
#include <errno.h>
#include "igt_core.h"
+#include "igt_device.h"
#include "ioctl_wrappers.h"
+#include "intel_chipset.h"
#include "gem_mman.h"
@@ -551,3 +553,109 @@ const struct mmap_offset mmap_offset_types[] = {
{ "uc", I915_MMAP_OFFSET_UC, I915_GEM_DOMAIN_WC },
{},
};
+
+/**
+ * gem_available_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the available gpu aperture size
+ * usable in a batchbuffer.
+ *
+ * Returns: The available gtt address space size.
+ */
+uint64_t gem_available_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_available_size = 256*1024*1024,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_available_size;
+}
+
+/**
+ * gem_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the total gpu aperture size.
+ *
+ * Returns: The total gtt address space size.
+ */
+uint64_t gem_aperture_size(int fd)
+{
+ struct drm_i915_gem_context_param p = {
+ .param = 0x3
+ };
Understand this is the original code, but it will be more readable to use I915_CONTEXT_PARAM_GTT_SIZE instead of 3.
+
+ if (__gem_context_get_param(fd, &p))
+ p.value = gem_global_aperture_size(fd);
+
+ return p.value;
+}
+
+/**
+ * gem_mappable_aperture_size:
+ *
+ * Feature test macro to query the kernel for the mappable gpu aperture size.
+ * This is the area available for GTT memory mappings.
+ *
+ * Returns: The mappable gtt address space size.
+ */
+uint64_t gem_mappable_aperture_size(int fd)
+{
+ struct pci_device *pci_dev = igt_device_get_pci_device(fd);
Does it make sense to eliminate the function intel_get_pci_device() if not being used anymore? But it can be a separate patch.
+ int bar;
+
+ if (intel_gen(pci_dev->device_id) < 3)
+ bar = 0;
+ else
+ bar = 2;
+
+ return pci_dev->regions[bar].size;
+}
+
+/**
+ * gem_global_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the global gpu aperture size.
+ * This is the area available for the kernel to perform address translations.
+ *
+ * Returns: The gtt address space size.
+ */
+uint64_t gem_global_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_size = 256*1024*1024
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_size;
+}
+
+/**
+ * gem_available_fences:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the number of available fences
+ * usable in a batchbuffer. Only relevant for pre-gen4.
+ *
+ * Returns: The number of available fences.
+ */
+int gem_available_fences(int fd)
+{
+ int num_fences = 0;
+ struct drm_i915_getparam gp = {
+ gp.param = I915_PARAM_NUM_FENCES_AVAIL,
+ gp.value = &num_fences,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
+ errno = 0;
+
+ return num_fences;
+}
diff --git a/lib/i915/gem_mman.h b/lib/i915/gem_mman.h
index 2c4a7a00b..ec2899ffe 100644
--- a/lib/i915/gem_mman.h
+++ b/lib/i915/gem_mman.h
@@ -109,5 +109,11 @@ bool gem_has_mmap_offset_type(int fd, const struct mmap_offset *t);
(__t)++) \
for_each_if(gem_has_mmap_offset_type((fd), (__t)))
+uint64_t gem_available_aperture_size(int fd);
+uint64_t gem_aperture_size(int fd);
+uint64_t gem_global_aperture_size(int fd);
+uint64_t gem_mappable_aperture_size(int fd);
+int gem_available_fences(int fd);
+
#endif /* GEM_MMAN_H */
diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 06431ce6c..a928f894f 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -782,31 +782,6 @@ bool gem_engine_reset_enabled(int fd)
return gem_gpu_reset_type(fd) > 1;
}
-/**
- * gem_available_fences:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the number of available fences
- * usable in a batchbuffer. Only relevant for pre-gen4.
- *
- * Returns: The number of available fences.
- */
-int gem_available_fences(int fd)
-{
- int num_fences;
- struct drm_i915_getparam gp;
-
- memset(&gp, 0, sizeof(gp));
- gp.param = I915_PARAM_NUM_FENCES_AVAIL;
- gp.value = &num_fences;
-
- num_fences = 0;
- ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
- errno = 0;
-
- return num_fences;
-}
-
bool gem_has_llc(int fd)
{
int has_llc;
@@ -929,97 +904,6 @@ uint64_t gem_total_stolen_size(int fd)
return aperture.stolen_total_size;
}
-/**
- * gem_available_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the available gpu aperture size
- * usable in a batchbuffer.
- *
- * Returns: The available gtt address space size.
- */
-uint64_t gem_available_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_available_size;
-}
-
-/**
- * gem_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the total gpu aperture size.
- *
- * Returns: The total gtt address space size.
- */
-uint64_t gem_aperture_size(int fd)
-{
- uint64_t aperture_size = 0;
- struct drm_i915_gem_context_param p;
-
- memset(&p, 0, sizeof(p));
- p.param = 0x3;
- if (__gem_context_get_param(fd, &p) == 0) {
- aperture_size = p.value;
- } else {
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
-
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
- aperture_size = aperture.aper_size;
- }
-
- return aperture_size;
-}
-
-/**
- * gem_mappable_aperture_size:
- *
- * Feature test macro to query the kernel for the mappable gpu aperture size.
- * This is the area available for GTT memory mappings.
- *
- * Returns: The mappable gtt address space size.
- */
-uint64_t gem_mappable_aperture_size(void)
-{
- struct pci_device *pci_dev = intel_get_pci_device();
- int bar;
-
- if (intel_gen(pci_dev->device_id) < 3)
- bar = 0;
- else
- bar = 2;
-
- return pci_dev->regions[bar].size;
-}
-
-/**
- * gem_global_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the global gpu aperture size.
- * This is the area available for the kernel to perform address translations.
- *
- * Returns: The gtt address space size.
- */
-uint64_t gem_global_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_size;
-}
-
/**
* gem_has_softpin:
* @fd: open i915 drm file descriptor
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index b76bea564..07879ae96 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -117,12 +117,7 @@ bool gem_uses_full_ppgtt(int fd);
int gem_gpu_reset_type(int fd);
bool gem_gpu_reset_enabled(int fd);
bool gem_engine_reset_enabled(int fd);
-int gem_available_fences(int fd);
uint64_t gem_total_stolen_size(int fd);
-uint64_t gem_available_aperture_size(int fd);
-uint64_t gem_aperture_size(int fd);
-uint64_t gem_global_aperture_size(int fd);
-uint64_t gem_mappable_aperture_size(void);
bool gem_has_softpin(int fd);
bool gem_has_exec_fence(int fd);
diff --git a/tests/i915/gem_concurrent_all.c b/tests/i915/gem_concurrent_all.c
index 9ea94125e..da850a104 100644
--- a/tests/i915/gem_concurrent_all.c
+++ b/tests/i915/gem_concurrent_all.c
@@ -1828,7 +1828,7 @@ igt_main
c->name, s->name, "small");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size()/4,
+ count = num_buffers(gem_mappable_aperture_size(fd)/4,
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1839,7 +1839,7 @@ igt_main
c->name, s->name, "thrash");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1871,7 +1871,7 @@ igt_main
c->name, s->name, "shrink");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
igt_fork_shrink_helper(fd);
@@ -1887,8 +1887,8 @@ igt_main
c->name, s->name, "swap");
igt_subtest_group {
igt_fixture {
- if (intel_get_avail_ram_mb() > gem_mappable_aperture_size()/(1024*1024)) {
- pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size()/(1024*1024);
+ if (intel_get_avail_ram_mb() > gem_mappable_aperture_size(fd)/(1024*1024)) {
+ pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size(fd)/(1024*1024);
igt_debug("Pinning %lld MiB\n", (long long)pin_sz);
pin_sz *= 1024 * 1024;
@@ -1902,7 +1902,7 @@ igt_main
igt_require(pinned);
}
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM | CHECK_SWAP);
}
run_modes(name, c, modes, s, count);
diff --git a/tests/i915/gem_mmap.c b/tests/i915/gem_mmap.c
index 8bad9b14e..60a64c134 100644
--- a/tests/i915/gem_mmap.c
+++ b/tests/i915/gem_mmap.c
@@ -53,10 +53,10 @@ test_huge_bo(int huge)
switch (huge) {
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_mmap_gtt.c b/tests/i915/gem_mmap_gtt.c
index 61fbc5bc7..528a7c726 100644
--- a/tests/i915/gem_mmap_gtt.c
+++ b/tests/i915/gem_mmap_gtt.c
@@ -905,7 +905,7 @@ test_huge_bo(int fd, int huge, int tiling)
switch (huge) {
case -1:
- size = gem_mappable_aperture_size() / 2;
+ size = gem_mappable_aperture_size(fd) / 2;
/* Power of two fence size, natural fence
* alignment, and the guard page at the end
@@ -920,7 +920,7 @@ test_huge_bo(int fd, int huge, int tiling)
size /= 2;
break;
case 0:
- size = gem_mappable_aperture_size() + PAGE_SIZE;
+ size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
default:
size = gem_global_aperture_size(fd) + PAGE_SIZE;
@@ -1001,13 +1001,13 @@ test_huge_copy(int fd, int huge, int tiling_a, int tiling_b, int ncpus)
switch (huge) {
case -2:
- huge_object_size = gem_mappable_aperture_size() / 4;
+ huge_object_size = gem_mappable_aperture_size(fd) / 4;
break;
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_global_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_pwrite.c b/tests/i915/gem_pwrite.c
index d2dcc95e8..f76d2bc70 100644
--- a/tests/i915/gem_pwrite.c
+++ b/tests/i915/gem_pwrite.c
@@ -130,7 +130,7 @@ static void test_big_cpu(int fd, int scale, unsigned flags)
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -192,7 +192,7 @@ static void test_big_gtt(int fd, int scale, unsigned flags)
igt_require(gem_mmap__has_wc(fd));
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -257,7 +257,7 @@ static void test_random(int fd)
gem_require_mmap_wc(fd);
size = min(intel_get_total_ram_mb() / 2,
- gem_mappable_aperture_size() + 4096);
+ gem_mappable_aperture_size(fd) + 4096);
intel_require_memory(1, size, CHECK_RAM);
handle = gem_create(fd, size);
diff --git a/tests/i915/gem_shrink.c b/tests/i915/gem_shrink.c
index dba62c8fa..023db8c56 100644
--- a/tests/i915/gem_shrink.c
+++ b/tests/i915/gem_shrink.c
@@ -439,7 +439,7 @@ igt_main
* we expect the shrinker to start purging objects,
* and possibly fail.
*/
- alloc_size = gem_mappable_aperture_size() / 2;
+ alloc_size = gem_mappable_aperture_size(fd) / 2;
num_processes = 1 + (mem_size / (alloc_size >> 20));
igt_info("Using %d processes and %'lluMiB per process\n",
diff --git a/tests/i915/gem_tiled_fence_blits.c b/tests/i915/gem_tiled_fence_blits.c
index 0a633d91b..28beea898 100644
--- a/tests/i915/gem_tiled_fence_blits.c
+++ b/tests/i915/gem_tiled_fence_blits.c
@@ -225,7 +225,7 @@ igt_main
gem_require_blitter(fd);
gem_require_mappable_ggtt(fd);
- count = gem_mappable_aperture_size(); /* thrash fences! */
+ count = gem_mappable_aperture_size(fd); /* thrash fences! */
if (count >> 32)
count = MAX_32b;
count = 3 + count / (1024 * 1024);
diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
index 6d46c320c..6321dd403 100644
--- a/tests/i915/i915_pm_rpm.c
+++ b/tests/i915/i915_pm_rpm.c
@@ -1419,7 +1419,7 @@ static void gem_evict_pwrite_subtest(void)
unsigned int num_trash_bos, n;
uint32_t buf;
- num_trash_bos = gem_mappable_aperture_size() / (1024*1024) + 1;
+ num_trash_bos = gem_mappable_aperture_size(drm_fd) / (1024*1024) + 1;
trash_bos = malloc(num_trash_bos * sizeof(*trash_bos));
igt_assert(trash_bos);
@@ -1463,7 +1463,7 @@ static bool device_in_pci_d3(void)
uint16_t val;
int rc;
- rc = pci_device_cfg_read_u16(intel_get_pci_device(), &val, 0xd4);
+ rc = pci_device_cfg_read_u16(igt_device_get_pci_device(drm_fd), &val, 0xd4);
igt_assert_eq(rc, 0);
igt_debug("%s: PCI D3 state=%d\n", __func__, val & 0x3);
diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 02e9915ba..8794ace08 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -645,7 +645,7 @@ igt_main
data.ram_size = intel_get_total_ram_mb() << 20;
data.aper_size = gem_aperture_size(data.drm_fd);
- data.mappable_size = gem_mappable_aperture_size();
+ data.mappable_size = gem_mappable_aperture_size(data.drm_fd);
igt_info("RAM: %"PRIu64" MiB, GPU address space: %"PRId64" MiB, GGTT mappable size: %"PRId64" MiB\n",
data.ram_size >> 20, data.aper_size >> 20,
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index 51b9ac950..0f0565cf6 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -1282,7 +1282,7 @@ static void __run_test_on_crtc_set(struct test_output *o, int *crtc_idxs,
/* 256 MB is usually the maximum mappable aperture,
* (make it 4x times that to ensure failure) */
if (o->flags & TEST_BO_TOOBIG) {
- bo_size = 4*gem_mappable_aperture_size();
+ bo_size = 4*gem_mappable_aperture_size(drm_fd);
igt_require(bo_size < gem_global_aperture_size(drm_fd));
}
diff --git a/tests/prime_mmap.c b/tests/prime_mmap.c
index 143342410..7c43ced85 100644
--- a/tests/prime_mmap.c
+++ b/tests/prime_mmap.c
@@ -447,8 +447,8 @@ test_aperture_limit(void)
char *ptr1, *ptr2;
uint32_t handle1, handle2;
/* Two buffers the sum of which > mappable aperture */
- uint64_t size1 = (gem_mappable_aperture_size() * 7) / 8;
- uint64_t size2 = (gem_mappable_aperture_size() * 3) / 8;
+ uint64_t size1 = (gem_mappable_aperture_size(fd) * 7) / 8;
+ uint64_t size2 = (gem_mappable_aperture_size(fd) * 3) / 8;
handle1 = gem_create(fd, size1);
fill_bo(handle1, BO_SIZE);
--
2.29.2
[-- Attachment #1.2: Type: text/html, Size: 62168 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
@ 2020-12-14 18:45 ` Chang, Yu bruce
0 siblings, 0 replies; 10+ messages in thread
From: Chang, Yu bruce @ 2020-12-14 18:45 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
[-- Attachment #1.1: Type: text/plain, Size: 20902 bytes --]
Some minor comments as below.
Reviewed-by: Bruce Chang <yu.bruce.chang@intel.com>
________________________________
From: Chris Wilson <chris@chris-wilson.co.uk>
Sent: Saturday, December 12, 2020 1:43 AM
To: intel-gfx@lists.freedesktop.org
Cc: igt-dev@lists.freedesktop.org; Chris Wilson; Chang, Yu bruce
Subject: [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
In order to find the correct aperture size for the test, we want to pass
the test's device into the query.
Reported-by: Bruce Chang <yu.bruce.chang@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Bruce Chang <yu.bruce.chang@intel.com>
---
lib/i915/gem_mman.c | 108 +++++++++++++++++++++++++++
lib/i915/gem_mman.h | 6 ++
lib/ioctl_wrappers.c | 116 -----------------------------
lib/ioctl_wrappers.h | 5 --
tests/i915/gem_concurrent_all.c | 12 +--
tests/i915/gem_mmap.c | 4 +-
tests/i915/gem_mmap_gtt.c | 10 +--
tests/i915/gem_pwrite.c | 6 +-
tests/i915/gem_shrink.c | 2 +-
tests/i915/gem_tiled_fence_blits.c | 2 +-
tests/i915/i915_pm_rpm.c | 4 +-
tests/kms_big_fb.c | 2 +-
tests/kms_flip.c | 2 +-
tests/prime_mmap.c | 4 +-
14 files changed, 138 insertions(+), 145 deletions(-)
diff --git a/lib/i915/gem_mman.c b/lib/i915/gem_mman.c
index 93bef2bfc..703c6a5c1 100644
--- a/lib/i915/gem_mman.c
+++ b/lib/i915/gem_mman.c
@@ -27,7 +27,9 @@
#include <errno.h>
#include "igt_core.h"
+#include "igt_device.h"
#include "ioctl_wrappers.h"
+#include "intel_chipset.h"
#include "gem_mman.h"
@@ -551,3 +553,109 @@ const struct mmap_offset mmap_offset_types[] = {
{ "uc", I915_MMAP_OFFSET_UC, I915_GEM_DOMAIN_WC },
{},
};
+
+/**
+ * gem_available_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the available gpu aperture size
+ * usable in a batchbuffer.
+ *
+ * Returns: The available gtt address space size.
+ */
+uint64_t gem_available_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_available_size = 256*1024*1024,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_available_size;
+}
+
+/**
+ * gem_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the total gpu aperture size.
+ *
+ * Returns: The total gtt address space size.
+ */
+uint64_t gem_aperture_size(int fd)
+{
+ struct drm_i915_gem_context_param p = {
+ .param = 0x3
+ };
Understand this is the original code, but it will be more readable to use I915_CONTEXT_PARAM_GTT_SIZE instead of 3.
+
+ if (__gem_context_get_param(fd, &p))
+ p.value = gem_global_aperture_size(fd);
+
+ return p.value;
+}
+
+/**
+ * gem_mappable_aperture_size:
+ *
+ * Feature test macro to query the kernel for the mappable gpu aperture size.
+ * This is the area available for GTT memory mappings.
+ *
+ * Returns: The mappable gtt address space size.
+ */
+uint64_t gem_mappable_aperture_size(int fd)
+{
+ struct pci_device *pci_dev = igt_device_get_pci_device(fd);
Does it make sense to eliminate the function intel_get_pci_device() if not being used anymore? But it can be a separate patch.
+ int bar;
+
+ if (intel_gen(pci_dev->device_id) < 3)
+ bar = 0;
+ else
+ bar = 2;
+
+ return pci_dev->regions[bar].size;
+}
+
+/**
+ * gem_global_aperture_size:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the global gpu aperture size.
+ * This is the area available for the kernel to perform address translations.
+ *
+ * Returns: The gtt address space size.
+ */
+uint64_t gem_global_aperture_size(int fd)
+{
+ struct drm_i915_gem_get_aperture aperture = {
+ aperture.aper_size = 256*1024*1024
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
+ errno = 0;
+
+ return aperture.aper_size;
+}
+
+/**
+ * gem_available_fences:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query the kernel for the number of available fences
+ * usable in a batchbuffer. Only relevant for pre-gen4.
+ *
+ * Returns: The number of available fences.
+ */
+int gem_available_fences(int fd)
+{
+ int num_fences = 0;
+ struct drm_i915_getparam gp = {
+ gp.param = I915_PARAM_NUM_FENCES_AVAIL,
+ gp.value = &num_fences,
+ };
+
+ ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
+ errno = 0;
+
+ return num_fences;
+}
diff --git a/lib/i915/gem_mman.h b/lib/i915/gem_mman.h
index 2c4a7a00b..ec2899ffe 100644
--- a/lib/i915/gem_mman.h
+++ b/lib/i915/gem_mman.h
@@ -109,5 +109,11 @@ bool gem_has_mmap_offset_type(int fd, const struct mmap_offset *t);
(__t)++) \
for_each_if(gem_has_mmap_offset_type((fd), (__t)))
+uint64_t gem_available_aperture_size(int fd);
+uint64_t gem_aperture_size(int fd);
+uint64_t gem_global_aperture_size(int fd);
+uint64_t gem_mappable_aperture_size(int fd);
+int gem_available_fences(int fd);
+
#endif /* GEM_MMAN_H */
diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 06431ce6c..a928f894f 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -782,31 +782,6 @@ bool gem_engine_reset_enabled(int fd)
return gem_gpu_reset_type(fd) > 1;
}
-/**
- * gem_available_fences:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the number of available fences
- * usable in a batchbuffer. Only relevant for pre-gen4.
- *
- * Returns: The number of available fences.
- */
-int gem_available_fences(int fd)
-{
- int num_fences;
- struct drm_i915_getparam gp;
-
- memset(&gp, 0, sizeof(gp));
- gp.param = I915_PARAM_NUM_FENCES_AVAIL;
- gp.value = &num_fences;
-
- num_fences = 0;
- ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
- errno = 0;
-
- return num_fences;
-}
-
bool gem_has_llc(int fd)
{
int has_llc;
@@ -929,97 +904,6 @@ uint64_t gem_total_stolen_size(int fd)
return aperture.stolen_total_size;
}
-/**
- * gem_available_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the available gpu aperture size
- * usable in a batchbuffer.
- *
- * Returns: The available gtt address space size.
- */
-uint64_t gem_available_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_available_size;
-}
-
-/**
- * gem_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the total gpu aperture size.
- *
- * Returns: The total gtt address space size.
- */
-uint64_t gem_aperture_size(int fd)
-{
- uint64_t aperture_size = 0;
- struct drm_i915_gem_context_param p;
-
- memset(&p, 0, sizeof(p));
- p.param = 0x3;
- if (__gem_context_get_param(fd, &p) == 0) {
- aperture_size = p.value;
- } else {
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
-
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
- aperture_size = aperture.aper_size;
- }
-
- return aperture_size;
-}
-
-/**
- * gem_mappable_aperture_size:
- *
- * Feature test macro to query the kernel for the mappable gpu aperture size.
- * This is the area available for GTT memory mappings.
- *
- * Returns: The mappable gtt address space size.
- */
-uint64_t gem_mappable_aperture_size(void)
-{
- struct pci_device *pci_dev = intel_get_pci_device();
- int bar;
-
- if (intel_gen(pci_dev->device_id) < 3)
- bar = 0;
- else
- bar = 2;
-
- return pci_dev->regions[bar].size;
-}
-
-/**
- * gem_global_aperture_size:
- * @fd: open i915 drm file descriptor
- *
- * Feature test macro to query the kernel for the global gpu aperture size.
- * This is the area available for the kernel to perform address translations.
- *
- * Returns: The gtt address space size.
- */
-uint64_t gem_global_aperture_size(int fd)
-{
- struct drm_i915_gem_get_aperture aperture;
-
- memset(&aperture, 0, sizeof(aperture));
- aperture.aper_size = 256*1024*1024;
- do_ioctl(fd, DRM_IOCTL_I915_GEM_GET_APERTURE, &aperture);
-
- return aperture.aper_size;
-}
-
/**
* gem_has_softpin:
* @fd: open i915 drm file descriptor
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index b76bea564..07879ae96 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -117,12 +117,7 @@ bool gem_uses_full_ppgtt(int fd);
int gem_gpu_reset_type(int fd);
bool gem_gpu_reset_enabled(int fd);
bool gem_engine_reset_enabled(int fd);
-int gem_available_fences(int fd);
uint64_t gem_total_stolen_size(int fd);
-uint64_t gem_available_aperture_size(int fd);
-uint64_t gem_aperture_size(int fd);
-uint64_t gem_global_aperture_size(int fd);
-uint64_t gem_mappable_aperture_size(void);
bool gem_has_softpin(int fd);
bool gem_has_exec_fence(int fd);
diff --git a/tests/i915/gem_concurrent_all.c b/tests/i915/gem_concurrent_all.c
index 9ea94125e..da850a104 100644
--- a/tests/i915/gem_concurrent_all.c
+++ b/tests/i915/gem_concurrent_all.c
@@ -1828,7 +1828,7 @@ igt_main
c->name, s->name, "small");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size()/4,
+ count = num_buffers(gem_mappable_aperture_size(fd)/4,
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1839,7 +1839,7 @@ igt_main
c->name, s->name, "thrash");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
}
run_modes(name, c, modes, s, count);
@@ -1871,7 +1871,7 @@ igt_main
c->name, s->name, "shrink");
igt_subtest_group {
igt_fixture {
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM);
igt_fork_shrink_helper(fd);
@@ -1887,8 +1887,8 @@ igt_main
c->name, s->name, "swap");
igt_subtest_group {
igt_fixture {
- if (intel_get_avail_ram_mb() > gem_mappable_aperture_size()/(1024*1024)) {
- pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size()/(1024*1024);
+ if (intel_get_avail_ram_mb() > gem_mappable_aperture_size(fd)/(1024*1024)) {
+ pin_sz = intel_get_avail_ram_mb() - gem_mappable_aperture_size(fd)/(1024*1024);
igt_debug("Pinning %lld MiB\n", (long long)pin_sz);
pin_sz *= 1024 * 1024;
@@ -1902,7 +1902,7 @@ igt_main
igt_require(pinned);
}
- count = num_buffers(gem_mappable_aperture_size(),
+ count = num_buffers(gem_mappable_aperture_size(fd),
s, c, CHECK_RAM | CHECK_SWAP);
}
run_modes(name, c, modes, s, count);
diff --git a/tests/i915/gem_mmap.c b/tests/i915/gem_mmap.c
index 8bad9b14e..60a64c134 100644
--- a/tests/i915/gem_mmap.c
+++ b/tests/i915/gem_mmap.c
@@ -53,10 +53,10 @@ test_huge_bo(int huge)
switch (huge) {
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_mmap_gtt.c b/tests/i915/gem_mmap_gtt.c
index 61fbc5bc7..528a7c726 100644
--- a/tests/i915/gem_mmap_gtt.c
+++ b/tests/i915/gem_mmap_gtt.c
@@ -905,7 +905,7 @@ test_huge_bo(int fd, int huge, int tiling)
switch (huge) {
case -1:
- size = gem_mappable_aperture_size() / 2;
+ size = gem_mappable_aperture_size(fd) / 2;
/* Power of two fence size, natural fence
* alignment, and the guard page at the end
@@ -920,7 +920,7 @@ test_huge_bo(int fd, int huge, int tiling)
size /= 2;
break;
case 0:
- size = gem_mappable_aperture_size() + PAGE_SIZE;
+ size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
default:
size = gem_global_aperture_size(fd) + PAGE_SIZE;
@@ -1001,13 +1001,13 @@ test_huge_copy(int fd, int huge, int tiling_a, int tiling_b, int ncpus)
switch (huge) {
case -2:
- huge_object_size = gem_mappable_aperture_size() / 4;
+ huge_object_size = gem_mappable_aperture_size(fd) / 4;
break;
case -1:
- huge_object_size = gem_mappable_aperture_size() / 2;
+ huge_object_size = gem_mappable_aperture_size(fd) / 2;
break;
case 0:
- huge_object_size = gem_mappable_aperture_size() + PAGE_SIZE;
+ huge_object_size = gem_mappable_aperture_size(fd) + PAGE_SIZE;
break;
case 1:
huge_object_size = gem_global_aperture_size(fd) + PAGE_SIZE;
diff --git a/tests/i915/gem_pwrite.c b/tests/i915/gem_pwrite.c
index d2dcc95e8..f76d2bc70 100644
--- a/tests/i915/gem_pwrite.c
+++ b/tests/i915/gem_pwrite.c
@@ -130,7 +130,7 @@ static void test_big_cpu(int fd, int scale, unsigned flags)
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -192,7 +192,7 @@ static void test_big_gtt(int fd, int scale, unsigned flags)
igt_require(gem_mmap__has_wc(fd));
switch (scale) {
case 0:
- size = gem_mappable_aperture_size() + 4096;
+ size = gem_mappable_aperture_size(fd) + 4096;
break;
case 1:
size = gem_global_aperture_size(fd) + 4096;
@@ -257,7 +257,7 @@ static void test_random(int fd)
gem_require_mmap_wc(fd);
size = min(intel_get_total_ram_mb() / 2,
- gem_mappable_aperture_size() + 4096);
+ gem_mappable_aperture_size(fd) + 4096);
intel_require_memory(1, size, CHECK_RAM);
handle = gem_create(fd, size);
diff --git a/tests/i915/gem_shrink.c b/tests/i915/gem_shrink.c
index dba62c8fa..023db8c56 100644
--- a/tests/i915/gem_shrink.c
+++ b/tests/i915/gem_shrink.c
@@ -439,7 +439,7 @@ igt_main
* we expect the shrinker to start purging objects,
* and possibly fail.
*/
- alloc_size = gem_mappable_aperture_size() / 2;
+ alloc_size = gem_mappable_aperture_size(fd) / 2;
num_processes = 1 + (mem_size / (alloc_size >> 20));
igt_info("Using %d processes and %'lluMiB per process\n",
diff --git a/tests/i915/gem_tiled_fence_blits.c b/tests/i915/gem_tiled_fence_blits.c
index 0a633d91b..28beea898 100644
--- a/tests/i915/gem_tiled_fence_blits.c
+++ b/tests/i915/gem_tiled_fence_blits.c
@@ -225,7 +225,7 @@ igt_main
gem_require_blitter(fd);
gem_require_mappable_ggtt(fd);
- count = gem_mappable_aperture_size(); /* thrash fences! */
+ count = gem_mappable_aperture_size(fd); /* thrash fences! */
if (count >> 32)
count = MAX_32b;
count = 3 + count / (1024 * 1024);
diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
index 6d46c320c..6321dd403 100644
--- a/tests/i915/i915_pm_rpm.c
+++ b/tests/i915/i915_pm_rpm.c
@@ -1419,7 +1419,7 @@ static void gem_evict_pwrite_subtest(void)
unsigned int num_trash_bos, n;
uint32_t buf;
- num_trash_bos = gem_mappable_aperture_size() / (1024*1024) + 1;
+ num_trash_bos = gem_mappable_aperture_size(drm_fd) / (1024*1024) + 1;
trash_bos = malloc(num_trash_bos * sizeof(*trash_bos));
igt_assert(trash_bos);
@@ -1463,7 +1463,7 @@ static bool device_in_pci_d3(void)
uint16_t val;
int rc;
- rc = pci_device_cfg_read_u16(intel_get_pci_device(), &val, 0xd4);
+ rc = pci_device_cfg_read_u16(igt_device_get_pci_device(drm_fd), &val, 0xd4);
igt_assert_eq(rc, 0);
igt_debug("%s: PCI D3 state=%d\n", __func__, val & 0x3);
diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 02e9915ba..8794ace08 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -645,7 +645,7 @@ igt_main
data.ram_size = intel_get_total_ram_mb() << 20;
data.aper_size = gem_aperture_size(data.drm_fd);
- data.mappable_size = gem_mappable_aperture_size();
+ data.mappable_size = gem_mappable_aperture_size(data.drm_fd);
igt_info("RAM: %"PRIu64" MiB, GPU address space: %"PRId64" MiB, GGTT mappable size: %"PRId64" MiB\n",
data.ram_size >> 20, data.aper_size >> 20,
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index 51b9ac950..0f0565cf6 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -1282,7 +1282,7 @@ static void __run_test_on_crtc_set(struct test_output *o, int *crtc_idxs,
/* 256 MB is usually the maximum mappable aperture,
* (make it 4x times that to ensure failure) */
if (o->flags & TEST_BO_TOOBIG) {
- bo_size = 4*gem_mappable_aperture_size();
+ bo_size = 4*gem_mappable_aperture_size(drm_fd);
igt_require(bo_size < gem_global_aperture_size(drm_fd));
}
diff --git a/tests/prime_mmap.c b/tests/prime_mmap.c
index 143342410..7c43ced85 100644
--- a/tests/prime_mmap.c
+++ b/tests/prime_mmap.c
@@ -447,8 +447,8 @@ test_aperture_limit(void)
char *ptr1, *ptr2;
uint32_t handle1, handle2;
/* Two buffers the sum of which > mappable aperture */
- uint64_t size1 = (gem_mappable_aperture_size() * 7) / 8;
- uint64_t size2 = (gem_mappable_aperture_size() * 3) / 8;
+ uint64_t size1 = (gem_mappable_aperture_size(fd) * 7) / 8;
+ uint64_t size2 = (gem_mappable_aperture_size(fd) * 3) / 8;
handle1 = gem_create(fd, size1);
fill_bo(handle1, BO_SIZE);
--
2.29.2
[-- Attachment #1.2: Type: text/html, Size: 62168 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] ✗ Fi.CI.BUILD: failure for lib: Pass device fd to gem_mmappable_aperture_size() (rev2)
2020-12-12 9:43 [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size() Chris Wilson
` (2 preceding siblings ...)
2020-12-14 18:45 ` [igt-dev] " Chang, Yu bruce
@ 2020-12-14 19:05 ` Patchwork
3 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2020-12-14 19:05 UTC (permalink / raw)
To: Chang, Yu bruce; +Cc: igt-dev
== Series Details ==
Series: lib: Pass device fd to gem_mmappable_aperture_size() (rev2)
URL : https://patchwork.freedesktop.org/series/84858/
State : failure
== Summary ==
Applying: lib: Pass device fd to gem_mmappable_aperture_size()
Patch failed at 0001 lib: Pass device fd to gem_mmappable_aperture_size()
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-14 18:45 ` [igt-dev] " Chang, Yu bruce
(?)
@ 2020-12-14 20:48 ` Chris Wilson
2020-12-14 21:52 ` Chang, Yu bruce
-1 siblings, 1 reply; 10+ messages in thread
From: Chris Wilson @ 2020-12-14 20:48 UTC (permalink / raw)
To: Chang, Yu bruce, intel-gfx; +Cc: igt-dev
Quoting Chang, Yu bruce (2020-12-14 18:45:04)
> +/**
> + * gem_mappable_aperture_size:
> + *
> + * Feature test macro to query the kernel for the mappable gpu aperture size.
> + * This is the area available for GTT memory mappings.
> + *
> + * Returns: The mappable gtt address space size.
> + */
> +uint64_t gem_mappable_aperture_size(int fd)
> +{
> + struct pci_device *pci_dev = igt_device_get_pci_device(fd);
>
> Does it make sense to eliminate the function intel_get_pci_device() if not
> being used anymore? But it can be a separate patch.
It's still used by tools. The complication there is that we mostly
need to lookup the pci device without loading i915.ko.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-14 20:48 ` [Intel-gfx] " Chris Wilson
@ 2020-12-14 21:52 ` Chang, Yu bruce
2020-12-14 22:15 ` Chris Wilson
0 siblings, 1 reply; 10+ messages in thread
From: Chang, Yu bruce @ 2020-12-14 21:52 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 2451 bytes --]
>
>From: Chris Wilson <chris@chris-wilson.co.uk>
>Sent: Monday, December 14, 2020 12:48 PM
>To: Chang, Yu bruce; intel-gfx@lists.freedesktop.org
>Cc: igt-dev@
>Subject: Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
>
>Quoting Chang, Yu bruce (2020-12-14 18:45:04)
>> +/**
>> + * gem_mappable_aperture_size:
>> + *
>> + * Feature test macro to query the kernel for the mappable gpu aperture size.
>> + * This is the area available for GTT memory mappings.
>> + *
> + * Returns: The mappable gtt address space size.
> + */
> +uint64_t gem_mappable_aperture_size(int fd)
> +{
> + struct pci_device *pci_dev = igt_device_get_pci_device(fd);
>
> Does it make sense to eliminate the function intel_get_pci_device() if not
> being used anymore? But it can be a separate patch.
>
>It's still used by tools. The complication there is that we mostly
>need to lookup the pci device without loading i915.ko.
>-Chris
>
That makes sense.
Then we need to make sure not start from a fix slot to look for GPU device in the intel_get_pci_device() below as
it may not work for a discrete GPU as that slot can be a non-vga device but with vendor_id 0x8086.
pci_dev = pci_device_find_by_slot(0, 0, 2, 0);
if (pci_dev == NULL || pci_dev->vendor_id != 0x8086) {
So, either add extra check to make sure it is VGA class or always use pci_device_next to search.
Thanks,
-Bruce
________________________________
From: Chris Wilson <chris@chris-wilson.co.uk>
Sent: Monday, December 14, 2020 12:48:40 PM
To: Chang, Yu bruce; intel-gfx@lists.freedesktop.org
Cc: igt-dev@
Subject: Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
Quoting Chang, Yu bruce (2020-12-14 18:45:04)
> +/**
> + * gem_mappable_aperture_size:
> + *
> + * Feature test macro to query the kernel for the mappable gpu aperture size.
> + * This is the area available for GTT memory mappings.
> + *
> + * Returns: The mappable gtt address space size.
> + */
> +uint64_t gem_mappable_aperture_size(int fd)
> +{
> + struct pci_device *pci_dev = igt_device_get_pci_device(fd);
>
> Does it make sense to eliminate the function intel_get_pci_device() if not
> being used anymore? But it can be a separate patch.
It's still used by tools. The complication there is that we mostly
need to lookup the pci device without loading i915.ko.
-Chris
[-- Attachment #1.2: Type: text/html, Size: 12344 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-14 21:52 ` Chang, Yu bruce
@ 2020-12-14 22:15 ` Chris Wilson
2020-12-14 23:40 ` Chang, Yu bruce
0 siblings, 1 reply; 10+ messages in thread
From: Chris Wilson @ 2020-12-14 22:15 UTC (permalink / raw)
To: Chang, Yu bruce, intel-gfx
Quoting Chang, Yu bruce (2020-12-14 21:52:10)
>
> >
> >From: Chris Wilson <chris@chris-wilson.co.uk>
> >Sent: Monday, December 14, 2020 12:48 PM
> >To: Chang, Yu bruce; intel-gfx@lists.freedesktop.org
> >Cc: igt-dev@
> >Subject: Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to
> gem_mmappable_aperture_size()
> >
> >Quoting Chang, Yu bruce (2020-12-14 18:45:04)
> >> +/**
> >> + * gem_mappable_aperture_size:
> >> + *
> >> + * Feature test macro to query the kernel for the mappable gpu aperture
> size.
> >> + * This is the area available for GTT memory mappings.
> >> + *
> > + * Returns: The mappable gtt address space size.
> > + */
> > +uint64_t gem_mappable_aperture_size(int fd)
> > +{
> > + struct pci_device *pci_dev = igt_device_get_pci_device(fd);
> >
> > Does it make sense to eliminate the function intel_get_pci_device() if not
> > being used anymore? But it can be a separate patch.
> >
> >It's still used by tools. The complication there is that we mostly
> >need to lookup the pci device without loading i915.ko.
> >-Chris
> >
>
> That makes sense.
>
> Then we need to make sure not start from a fix slot to look for GPU device in
> the intel_get_pci_device() below as
> it may not work for a discrete GPU as that slot can be a non-vga device but
> with vendor_id 0x8086.
>
> pci_dev = pci_device_find_by_slot(0, 0, 2, 0);
> if (pci_dev == NULL || pci_dev->vendor_id != 0x8086) {
>
> So, either add extra check to make sure it is VGA class or always use
> pci_device_next to search.
It's held true for ~20 years :)
I hear you; for the remaining users, they should probably use the lsgpu
interface to pick the right device to work on (and remove
intel_get_pci_device).
tools/intel_audio_dump.c
tools/intel_backlight.c
tools/intel_display_poller.c
tools/intel_forcewaked.c
tools/intel_gpu_time.c
tools/intel_gtt.c
tools/intel_infoframes.c
tools/intel_lid.c
tools/intel_panel_fitter.c
tools/intel_reg.c
tools/intel_reg_checker.c
tools/intel_watermark.c
A few of those could even be retired.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
2020-12-14 22:15 ` Chris Wilson
@ 2020-12-14 23:40 ` Chang, Yu bruce
0 siblings, 0 replies; 10+ messages in thread
From: Chang, Yu bruce @ 2020-12-14 23:40 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 2594 bytes --]
>From: Chris Wilson <chris@chris-wilson.co.uk>
>
>Sent: Monday, December 14, 2020 2:15 PM
>To: Chang, Yu bruce; intel-gfx@lists.freedesktop.org
>Subject: Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size()
>
>Quoting Chang, Yu bruce (2020-12-14 21:52:10)
>>
>> >
>> >From: Chris Wilson <chris@chris-wilson.co.uk>
>> >Sent: Monday, December 14, 2020 12:48 PM
>> >To: Chang, Yu bruce; intel-gfx@lists.freedesktop.org
>> >Cc: igt-dev@
>> >Subject: Re: [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to
>> gem_mmappable_aperture_size()
>> >
>> >Quoting Chang, Yu bruce (2020-12-14 18:45:04)
>> >> +/**
>> >> + * gem_mappable_aperture_size:
>> >> + *
>> >> + * Feature test macro to query the kernel for the mappable gpu aperture
>> size.
>> >> + * This is the area available for GTT memory mappings.
>> >> + *
>> > + * Returns: The mappable gtt address space size.
>> > + */
>> > +uint64_t gem_mappable_aperture_size(int fd)
>> > +{
>> > + struct pci_device *pci_dev = igt_device_get_pci_device(fd);
>> >
>> > Does it make sense to eliminate the function intel_get_pci_device() if not
>> > being used anymore? But it can be a separate patch.
>> >
>> >It's still used by tools. The complication there is that we mostly
>> >need to lookup the pci device without loading i915.ko.
>> >-Chris
>> >
>>
>> That makes sense.
>>
>> Then we need to make sure not start from a fix slot to look for GPU device in
>> the intel_get_pci_device() below as
>> it may not work for a discrete GPU as that slot can be a non-vga device but
>> with vendor_id 0x8086.
>>
>> pci_dev = pci_device_find_by_slot(0, 0, 2, 0);
>> if (pci_dev == NULL || pci_dev->vendor_id != 0x8086) {
>>
>> So, either add extra check to make sure it is VGA class or always use
>> pci_device_next to search.
>
>It's held true for ~20 years :)
>
>I hear you; for the remaining users, they should probably use the lsgpu
>interface to pick the right device to work on (and remove
>intel_get_pci_device).
>
>tools/intel_audio_dump.c
>tools/intel_backlight.c
>tools/intel_display_poller.c
>tools/intel_forcewaked.c
>tools/intel_gpu_time.c
>tools/intel_gtt.c
>tools/intel_infoframes.c
>tools/intel_lid.c
>tools/intel_panel_fitter.c
>tools/intel_reg.c
>tools/intel_reg_checker.c
>tools/intel_watermark.c
>
>A few of those could even be retired.
>-Chris
>
>
Sounds reasonably to me. the rest of your changes look good to me, and also fix my issue.
Thanks,
Bruce
Reviewed-by: Bruce Chang <yu.bruce.chang@intel.com>
[-- Attachment #1.2: Type: text/html, Size: 5559 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2020-12-14 23:40 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-12 9:43 [Intel-gfx] [PATCH i-g-t] lib: Pass device fd to gem_mmappable_aperture_size() Chris Wilson
2020-12-12 10:20 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2020-12-12 11:20 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2020-12-14 18:45 ` [Intel-gfx] [PATCH i-g-t] " Chang, Yu bruce
2020-12-14 18:45 ` [igt-dev] " Chang, Yu bruce
2020-12-14 20:48 ` [Intel-gfx] " Chris Wilson
2020-12-14 21:52 ` Chang, Yu bruce
2020-12-14 22:15 ` Chris Wilson
2020-12-14 23:40 ` Chang, Yu bruce
2020-12-14 19:05 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib: Pass device fd to gem_mmappable_aperture_size() (rev2) Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.