diff options
Diffstat (limited to 'arch/sparc/kernel/sys_solaris.c')
-rw-r--r-- | arch/sparc/kernel/sys_solaris.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/sparc/kernel/sys_solaris.c b/arch/sparc/kernel/sys_solaris.c index 6bef6e523..6c46c60f0 100644 --- a/arch/sparc/kernel/sys_solaris.c +++ b/arch/sparc/kernel/sys_solaris.c @@ -4,6 +4,7 @@ * Copyright (C) 1996 Miguel de Icaza (miguel@nuclecu.unam.mx) */ +#include <linux/config.h> #include <linux/sched.h> #include <linux/kernel.h> #include <linux/string.h> @@ -24,7 +25,7 @@ do_solaris_syscall (struct pt_regs *regs) current->exec_domain = lookup_exec_domain(PER_SVR4); if (current->exec_domain && current->exec_domain->handler){ - current->exec_domain->handler (regs); + current->exec_domain->handler (0, regs); /* What is going on here? Why do we do this? */ @@ -39,3 +40,16 @@ do_solaris_syscall (struct pt_regs *regs) unlock_kernel(); return ret; } + +#ifndef CONFIG_SUNOS_EMUL +asmlinkage int +do_sunos_syscall (struct pt_regs *regs) +{ + static int cnt = 0; + if (++cnt < 10) printk ("SunOS binary emulation not compiled in\n"); + lock_kernel(); + force_sig (SIGSEGV, current); + unlock_kernel(); + return 0; +} +#endif |