|
@@ -0,0 +1,31 @@
|
|
|
|
+From 5eac795b8b067842caec32f96d55a7554c3c67f9 Mon Sep 17 00:00:00 2001
|
|
|
|
+From: Jan Luebbe <jlu@pengutronix.de>
|
|
|
|
+Date: Thu, 02 May 2013 14:47:12 +0000
|
|
|
|
+Subject: libkmod: Avoid calling syscall() with -1
|
|
|
|
+
|
|
|
|
+At least in qemu 1.4.1 for vexpress/arm-cortexa9, this resulted in an
|
|
|
|
+illegal instruction error. Solve that by returning an error when
|
|
|
|
+__NR_finit_module is -1.
|
|
|
|
+---
|
|
|
|
+diff --git a/libkmod/missing.h b/libkmod/missing.h
|
|
|
|
+index edb88b9..b45bbe2 100644
|
|
|
|
+--- a/libkmod/missing.h
|
|
|
|
++++ b/libkmod/missing.h
|
|
|
|
+@@ -20,8 +20,15 @@
|
|
|
|
+ #endif
|
|
|
|
+
|
|
|
|
+ #ifndef HAVE_FINIT_MODULE
|
|
|
|
++#include <errno.h>
|
|
|
|
++
|
|
|
|
+ static inline int finit_module(int fd, const char *uargs, int flags)
|
|
|
|
+ {
|
|
|
|
++ if (__NR_finit_module == -1) {
|
|
|
|
++ errno = ENOSYS;
|
|
|
|
++ return -1;
|
|
|
|
++ }
|
|
|
|
++
|
|
|
|
+ return syscall(__NR_finit_module, fd, uargs, flags);
|
|
|
|
+ }
|
|
|
|
+ #endif
|
|
|
|
+--
|
|
|
|
+cgit v0.9.2
|