From 137360f75a42042198cf00d35a54cc68660d8c90 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 23 Mar 2017 17:09:26 +0000 Subject: lib: system() is bad, use libkmod instead For an as of yet unknown reason, calling system("modprobe") from inside igt/gem_wait causes kasan to spend 1-5 minutes copying the process pagetables. This evaporates if we replace the fork-happy call to system with a call to load the module using libkmod. So be it. Signed-off-by: Chris Wilson --- lib/drmtest.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lib/drmtest.c') diff --git a/lib/drmtest.c b/lib/drmtest.c index 35f71c0d..fab705ad 100644 --- a/lib/drmtest.c +++ b/lib/drmtest.c @@ -51,8 +51,9 @@ #include "i915_drm.h" #include "intel_chipset.h" #include "intel_io.h" -#include "igt_gt.h" #include "igt_debugfs.h" +#include "igt_gt.h" +#include "igt_kmod.h" #include "version.h" #include "config.h" #include "intel_reg.h" @@ -228,9 +229,7 @@ int drm_get_card(void) static int modprobe(const char *driver) { - char buf[128]; - snprintf(buf, sizeof(buf), "/sbin/modprobe -s %s", driver); - return system(buf); + return igt_kmod_load(driver, ""); } /** -- cgit v1.2.3