lkml.org 
[lkml]   [2001]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[alpha] emulate osf/1 sys_indirect
Noticed that Netscape wanted to use it.


r~



--- arch/alpha/kernel/entry.S.orig Wed Nov 21 15:59:16 2001
+++ arch/alpha/kernel/entry.S Wed Nov 21 16:22:09 2001
@@ -488,6 +488,26 @@ entUnaUser:
.end entUnaUser

/*
+ * No idea why OSF/1 didn't implement syscall(3) in userland.
+ * Implement this by shifting the registers around, backing up
+ * the pc to the callsys, and returning to usermode.
+ */
+.align 3
+.ent sys_indirect
+sys_indirect:
+ ldq $1, SP_OFF+8($30)
+ stq $16, 0($30)
+ stq $17, SP_OFF+24($30)
+ stq $18, SP_OFF+32($30)
+ stq $19, SP_OFF+40($30)
+ stq $20, 72($30)
+ stq $21, 80($30)
+ subq $1, 4, $1
+ stq $1, SP_OFF+8($30)
+ br restore_all
+.end sys_indirect
+
+/*
* A fork is the same as clone(SIGCHLD, 0);
*/
.align 3
@@ -765,7 +785,7 @@ sys_rt_sigsuspend:
.align 3
.globl sys_call_table
sys_call_table:
- .quad alpha_ni_syscall /* 0 */
+ .quad sys_indirect /* 0 */
.quad sys_exit
.quad sys_fork
.quad sys_read
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:13    [W:0.032 / U:1.496 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site