mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-17 17:53:56 +08:00
x86: get rid of pt_regs argument in vm86/vm86old
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
3fe26fa34d
commit
49cb25e929
@ -40,8 +40,8 @@ asmlinkage int sys_sigaction(int, const struct old_sigaction __user *,
|
||||
unsigned long sys_sigreturn(void);
|
||||
|
||||
/* kernel/vm86_32.c */
|
||||
int sys_vm86old(struct vm86_struct __user *, struct pt_regs *);
|
||||
int sys_vm86(unsigned long, unsigned long, struct pt_regs *);
|
||||
int sys_vm86old(struct vm86_struct __user *);
|
||||
int sys_vm86(unsigned long, unsigned long);
|
||||
|
||||
#else /* CONFIG_X86_32 */
|
||||
|
||||
|
@ -699,27 +699,6 @@ END(syscall_badsys)
|
||||
*/
|
||||
.popsection
|
||||
|
||||
/*
|
||||
* System calls that need a pt_regs pointer.
|
||||
*/
|
||||
#define PTREGSCALL1(name) \
|
||||
ENTRY(ptregs_##name) ; \
|
||||
leal 4(%esp),%edx; \
|
||||
movl (PT_EBX+4)(%esp),%eax; \
|
||||
jmp sys_##name; \
|
||||
ENDPROC(ptregs_##name)
|
||||
|
||||
#define PTREGSCALL2(name) \
|
||||
ENTRY(ptregs_##name) ; \
|
||||
leal 4(%esp),%ecx; \
|
||||
movl (PT_ECX+4)(%esp),%edx; \
|
||||
movl (PT_EBX+4)(%esp),%eax; \
|
||||
jmp sys_##name; \
|
||||
ENDPROC(ptregs_##name)
|
||||
|
||||
PTREGSCALL2(vm86)
|
||||
PTREGSCALL1(vm86old)
|
||||
|
||||
.macro FIXUP_ESPFIX_STACK
|
||||
/*
|
||||
* Switch back for ESPFIX stack to the normal zerobased stack
|
||||
|
@ -202,7 +202,7 @@ out:
|
||||
static int do_vm86_irq_handling(int subfunction, int irqnumber);
|
||||
static void do_sys_vm86(struct kernel_vm86_struct *info, struct task_struct *tsk);
|
||||
|
||||
int sys_vm86old(struct vm86_struct __user *v86, struct pt_regs *regs)
|
||||
int sys_vm86old(struct vm86_struct __user *v86)
|
||||
{
|
||||
struct kernel_vm86_struct info; /* declare this _on top_,
|
||||
* this avoids wasting of stack space.
|
||||
@ -222,7 +222,7 @@ int sys_vm86old(struct vm86_struct __user *v86, struct pt_regs *regs)
|
||||
if (tmp)
|
||||
goto out;
|
||||
memset(&info.vm86plus, 0, (int)&info.regs32 - (int)&info.vm86plus);
|
||||
info.regs32 = regs;
|
||||
info.regs32 = current_pt_regs();
|
||||
tsk->thread.vm86_info = v86;
|
||||
do_sys_vm86(&info, tsk);
|
||||
ret = 0; /* we never return here */
|
||||
@ -231,7 +231,7 @@ out:
|
||||
}
|
||||
|
||||
|
||||
int sys_vm86(unsigned long cmd, unsigned long arg, struct pt_regs *regs)
|
||||
int sys_vm86(unsigned long cmd, unsigned long arg)
|
||||
{
|
||||
struct kernel_vm86_struct info; /* declare this _on top_,
|
||||
* this avoids wasting of stack space.
|
||||
@ -272,7 +272,7 @@ int sys_vm86(unsigned long cmd, unsigned long arg, struct pt_regs *regs)
|
||||
ret = -EFAULT;
|
||||
if (tmp)
|
||||
goto out;
|
||||
info.regs32 = regs;
|
||||
info.regs32 = current_pt_regs();
|
||||
info.vm86plus.is_vm86pus = 1;
|
||||
tsk->thread.vm86_info = (struct vm86_struct __user *)v86;
|
||||
do_sys_vm86(&info, tsk);
|
||||
|
@ -119,7 +119,7 @@
|
||||
110 i386 iopl sys_iopl
|
||||
111 i386 vhangup sys_vhangup
|
||||
112 i386 idle
|
||||
113 i386 vm86old ptregs_vm86old sys32_vm86_warning
|
||||
113 i386 vm86old sys_vm86old sys32_vm86_warning
|
||||
114 i386 wait4 sys_wait4 compat_sys_wait4
|
||||
115 i386 swapoff sys_swapoff
|
||||
116 i386 sysinfo sys_sysinfo compat_sys_sysinfo
|
||||
@ -172,7 +172,7 @@
|
||||
163 i386 mremap sys_mremap
|
||||
164 i386 setresuid sys_setresuid16
|
||||
165 i386 getresuid sys_getresuid16
|
||||
166 i386 vm86 ptregs_vm86 sys32_vm86_warning
|
||||
166 i386 vm86 sys_vm86 sys32_vm86_warning
|
||||
167 i386 query_module
|
||||
168 i386 poll sys_poll
|
||||
169 i386 nfsservctl
|
||||
|
@ -24,9 +24,6 @@
|
||||
|
||||
#define old_mmap sys_old_mmap
|
||||
|
||||
#define ptregs_vm86old sys_vm86old
|
||||
#define ptregs_vm86 sys_vm86
|
||||
|
||||
#define __SYSCALL_I386(nr, sym, compat) extern asmlinkage void sym(void) ;
|
||||
#include <asm/syscalls_32.h>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user