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 <chris@chris-wilson.co.uk>
diff --git a/lib/drmtest.c b/lib/drmtest.c
index 35f71c0..fab705a 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 @@
 
 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, "");
 }
 
 /**
diff --git a/lib/igt_kmod.h b/lib/igt_kmod.h
index 10cd3a2..fd307a4 100644
--- a/lib/igt_kmod.h
+++ b/lib/igt_kmod.h
@@ -26,6 +26,8 @@
 
 #include <libkmod.h>
 
+#include "igt_aux.h"
+
 bool igt_kmod_is_loaded(const char *mod_name);
 void igt_kmod_list_loaded(void);