asmlinkage tag seems to be missing from sys_iopl prototype rendering iopl
syscalls unusable, i.e. every call returns -EINVAL. Most likely introduced in
9e0b2428bc6a6c6df90bb701ca843820727cadf0.

Signed-off-by: Artem Savkov <[email protected]>
---
 arch/x86/include/asm/syscalls.h | 2 +-
 arch/x86/kernel/ioport.c        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/syscalls.h b/arch/x86/include/asm/syscalls.h
index 13f078c..6cf0a9c 100644
--- a/arch/x86/include/asm/syscalls.h
+++ b/arch/x86/include/asm/syscalls.h
@@ -18,7 +18,7 @@
 /* Common in X86_32 and X86_64 */
 /* kernel/ioport.c */
 asmlinkage long sys_ioperm(unsigned long, unsigned long, int);
-long sys_iopl(unsigned int);
+asmlinkage long sys_iopl(unsigned int);
 
 /* kernel/ldt.c */
 asmlinkage int sys_modify_ldt(int, void __user *, unsigned long);
diff --git a/arch/x86/kernel/ioport.c b/arch/x86/kernel/ioport.c
index 5f98381..b1127a0 100644
--- a/arch/x86/kernel/ioport.c
+++ b/arch/x86/kernel/ioport.c
@@ -93,7 +93,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long 
num, int turn_on)
  * on system-call entry - see also fork() and the signal handling
  * code.
  */
-long sys_iopl(unsigned int level)
+asmlinkage long sys_iopl(unsigned int level)
 {
        struct pt_regs *regs = current_pt_regs();
        unsigned int old = (regs->flags >> 12) & 3;
-- 
1.8.1.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to