summaryrefslogtreecommitdiffstats
path: root/patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch')
-rw-r--r--patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch b/patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch
new file mode 100644
index 000000000..a385d6320
--- /dev/null
+++ b/patches/kmod-13/0001-missing-Don-t-call-syscall-with-syscallno-1.patch
@@ -0,0 +1,40 @@
+From: Lucas De Marchi <lucas.de.marchi@gmail.com>
+Date: Thu, 2 May 2013 13:22:57 -0300
+Subject: [PATCH] missing: Don't call syscall() with syscallno == -1
+
+Reported-by: Jean-Francis Roy <jeanfrancis@funtoo.org>
+Reported-by: Jan Luebbe <jlu@pengutronix.de>
+---
+ libkmod/missing.h | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/libkmod/missing.h b/libkmod/missing.h
+index edb88b9..b31af84 100644
+--- a/libkmod/missing.h
++++ b/libkmod/missing.h
+@@ -1,5 +1,6 @@
+ #pragma once
+
++#include <errno.h>
+ #include <unistd.h>
+ #include <sys/syscall.h>
+
+@@ -15,13 +16,14 @@
+ # define MODULE_INIT_IGNORE_VERMAGIC 2
+ #endif
+
+-#ifndef __NR_finit_module
+-# define __NR_finit_module -1
+-#endif
+-
+ #ifndef HAVE_FINIT_MODULE
+ static inline int finit_module(int fd, const char *uargs, int flags)
+ {
++#ifndef __NR_finit_module
++ errno = ENOSYS;
++ return -1;
++#else
+ return syscall(__NR_finit_module, fd, uargs, flags);
++#endif
+ }
+ #endif