[Intel-gfx] [PATCH i-g-t] tests/core_auth: set rlimit

Daniel Vetter daniel.vetter at ffwll.ch
Fri Aug 4 14:38:51 UTC 2017


Some distros have huge rlimits and then the test takes forever, or
worse oom, or even worse, takse down the entire machine (which is
shouldn't be able to, but oh well, oom handling in linux).

Make sure we have a consistent rlimit by adjusting it manually.

v2: Use the default of 1024 from everywhere except ubuntu.

Cc: Tomi Sarvela <tomi.p.sarvela at intel.com>
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
---
 tests/core_auth.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tests/core_auth.c b/tests/core_auth.c
index e08c8aed4c63..cedcff923937 100644
--- a/tests/core_auth.c
+++ b/tests/core_auth.c
@@ -39,6 +39,7 @@
 #include <sys/ioctl.h>
 #include <sys/time.h>
 #include <sys/poll.h>
+#include <sys/resource.h>
 #include "drm.h"
 
 IGT_TEST_DESCRIPTION("Call drmGetMagic() and drmAuthMagic() and see if it behaves.");
@@ -55,6 +56,12 @@ static void test_many_magics(int master)
 	char path[512];
 	int *fds = NULL, slave;
 
+	struct rlimit fd_limit;
+
+	do_or_die(getrlimit(RLIMIT_NOFILE, &fd_limit));
+	fd_limit.rlim_cur = 1024;
+	do_or_die(setrlimit(RLIMIT_NOFILE, &fd_limit));
+
 	sprintf(path, "/proc/self/fd/%d", master);
 
 	for (i = 0; ; ++i) {
@@ -157,6 +164,7 @@ igt_main
 	igt_subtest("basic-auth")
 		test_basic_auth(master);
 
+	/* this must be last, we adjust the rlimit */
 	igt_subtest("many-magics")
 		test_many_magics(master);
 }
-- 
2.5.5



More information about the Intel-gfx mailing list