summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-03-19 14:01:38 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2016-03-19 15:21:28 +0000
commite85613b47c3ca40eeecd436dab3d6c660298d559 (patch)
tree64bf3756ef4498a3d326ad8d565a6af8fedc8291 /lib
parentc2248efbca452d1c657ace1b51aa6308504d0c7f (diff)
igt/gem_concurrent_blit: dmabuf requires twice the number of files
In order to keep the dmabuf mmap around whilst we keep the object alive, we need a file descriptor for each. Check that the VFS supports that many fd. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'lib')
-rw-r--r--lib/igt_aux.h1
-rw-r--r--lib/intel_os.c13
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/igt_aux.h b/lib/igt_aux.h
index eabeefd2..101fad12 100644
--- a/lib/igt_aux.h
+++ b/lib/igt_aux.h
@@ -97,6 +97,7 @@ uint64_t intel_get_total_swap_mb(void);
int __intel_check_memory(uint64_t count, uint64_t size, unsigned mode,
uint64_t *out_required, uint64_t *out_total);
void intel_require_memory(uint64_t count, uint64_t size, unsigned mode);
+void intel_require_files(uint64_t count);
#define CHECK_RAM 0x1
#define CHECK_SWAP 0x2
diff --git a/lib/intel_os.c b/lib/intel_os.c
index 90b30210..8fcf0d63 100644
--- a/lib/intel_os.c
+++ b/lib/intel_os.c
@@ -192,6 +192,19 @@ static uint64_t vfs_file_max(void)
return max;
}
+/**
+ * intel_require_files:
+ * @count: number of files that will be created
+ *
+ * Does the system support enough file descriptors for the test?
+ */
+void intel_require_files(uint64_t count)
+{
+ igt_require_f(count < vfs_file_max(),
+ "Estimated that we need %'llu files, but the VFS maximum is only %'llu\n",
+ (long long)count, (long long)vfs_file_max());
+}
+
int __intel_check_memory(uint64_t count, uint64_t size, unsigned mode,
uint64_t *out_required, uint64_t *out_total)
{