This adds a sys_tux entry in the SPARC and SPARC64 sys_call_table.
Unused entry 227 was used for this. To use it :

#define __NR_sys_tux	227


--- ./arch/sparc/kernel/systbls.S.orig	2004-08-22 16:30:26.000000000 +0200
+++ ./arch/sparc/kernel/systbls.S	2004-08-22 16:36:20.000000000 +0200
@@ -11,6 +11,16 @@
 
 #include <linux/config.h>
 
+#ifdef CONFIG_TUX
+# define SYS_TUX	__sys_tux
+#else
+# ifdef CONFIG_TUX_MODULE
+#  define SYS_TUX	sys_tux
+# else
+#  define SYS_TUX	sys_nis_syscall
+# endif
+#endif
+
 	.data
 	.align 4
 
@@ -63,7 +73,7 @@
 /*210*/	.long sys_nis_syscall, sys_nis_syscall, sys_waitpid, sys_swapoff, sys_sysinfo
 /*215*/	.long sys_ipc, sys_sigreturn, sys_clone, sys_nis_syscall, sys_adjtimex
 /*220*/	.long sys_sigprocmask, sys_create_module, sys_delete_module, sys_get_kernel_syms, sys_getpgid
-/*225*/	.long sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid16, sys_setfsgid16
+/*225*/	.long sys_bdflush, sys_sysfs, SYS_TUX, sys_setfsuid16, sys_setfsgid16
 /*230*/	.long sys_select, sys_time, sys_nis_syscall, sys_stime, sys_nis_syscall
 					  /* "We are the Knights of the Forest of Ni!!" */
 /*235*/	.long sys_nis_syscall, sys_llseek, sys_mlock, sys_munlock, sys_mlockall


--- ./arch/sparc64/kernel/systbls.S.orig	2004-08-22 16:31:00.000000000 +0200
+++ ./arch/sparc64/kernel/systbls.S	2004-08-22 16:36:33.000000000 +0200
@@ -12,6 +12,16 @@
 
 #include <linux/config.h>
 
+#ifdef CONFIG_TUX
+# define SYS_TUX	__sys_tux
+#else
+# ifdef CONFIG_TUX_MODULE
+#  define SYS_TUX	sys_tux
+# else
+#  define SYS_TUX	sys_nis_syscall
+# endif
+#endif
+
 	.text
 	.align	1024
 
@@ -64,7 +74,7 @@
 /*210*/	.word sys_nis_syscall, sys_nis_syscall, sys_waitpid, sys_swapoff, sys32_sysinfo
 	.word sys32_ipc, sys32_sigreturn, sys_clone, sys_nis_syscall, sys32_adjtimex
 /*220*/	.word sys32_sigprocmask, sys32_create_module, sys32_delete_module, sys32_get_kernel_syms, sys_getpgid
-	.word sys32_bdflush, sys32_sysfs, sys_nis_syscall, sys32_setfsuid16, sys32_setfsgid16
+	.word sys32_bdflush, sys32_sysfs, SYS_TUX, sys32_setfsuid16, sys32_setfsgid16
 /*230*/	.word sys32_select, sys_time, sys_nis_syscall, sys_stime, sys_nis_syscall
 	.word sys_nis_syscall, sys_llseek, sys_mlock, sys_munlock, sys_mlockall
 /*240*/	.word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
@@ -126,7 +136,7 @@
 /*210*/	.word sys_nis_syscall, sys_nis_syscall, sys_waitpid, sys_swapoff, sys_sysinfo
 	.word sys_ipc, sys_nis_syscall, sys_clone, sys_nis_syscall, sys_adjtimex
 /*220*/	.word sys_nis_syscall, sys_create_module, sys_delete_module, sys_get_kernel_syms, sys_getpgid
-	.word sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid, sys_setfsgid
+	.word sys_bdflush, sys_sysfs, SYS_TUX, sys_setfsuid, sys_setfsgid
 /*230*/	.word sys_select, sys_nis_syscall, sys_nis_syscall, sys_stime, sys_nis_syscall
 	.word sys_nis_syscall, sys_llseek, sys_mlock, sys_munlock, sys_mlockall
 /*240*/	.word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler