[PATCH 5/10] UML - compile fixes

From: Jeff Dike
Date: Sun Jan 16 2005 - 22:51:17 EST


This fixes some warnings, and changes the system call table so that it will
compile in -linus, where the vperf system calls are not yet merged.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxx>

Index: 2.6.10/arch/um/include/sysdep-i386/ptrace_user.h
===================================================================
--- 2.6.10.orig/arch/um/include/sysdep-i386/ptrace_user.h 2005-01-16 20:37:44.000000000 -0500
+++ 2.6.10/arch/um/include/sysdep-i386/ptrace_user.h 2005-01-16 20:59:20.000000000 -0500
@@ -6,6 +6,7 @@
#ifndef __SYSDEP_I386_PTRACE_USER_H__
#define __SYSDEP_I386_PTRACE_USER_H__

+#include <linux/ptrace.h>
#include <asm/ptrace.h>

#define PT_OFFSET(r) ((r) * sizeof(long))
Index: 2.6.10/arch/um/include/sysdep-i386/syscalls.h
===================================================================
--- 2.6.10.orig/arch/um/include/sysdep-i386/syscalls.h 2005-01-16 20:37:24.000000000 -0500
+++ 2.6.10/arch/um/include/sysdep-i386/syscalls.h 2005-01-16 20:59:20.000000000 -0500
@@ -15,6 +15,11 @@
extern syscall_handler_t sys_rt_sigaction;

extern syscall_handler_t old_mmap_i386;
+extern syscall_handler_t sys_vperfctr_open;
+extern syscall_handler_t sys_vperfctr_control;
+extern syscall_handler_t sys_vperfctr_unlink;
+extern syscall_handler_t sys_vperfctr_iresume;
+extern syscall_handler_t sys_vperfctr_read;

#define EXECUTE_SYSCALL(syscall, regs) \
((long (*)(struct syscall_args)) (*sys_call_table[syscall]))(SYSCALL_ARGS(&regs->regs))
@@ -105,11 +110,25 @@
[ 251 ] = (syscall_handler_t *) sys_ni_syscall, \
[ __NR_remap_file_pages ] = (syscall_handler_t *) sys_remap_file_pages, \
[ __NR_utimes ] = (syscall_handler_t *) sys_utimes, \
- [ __NR_vserver ] = (syscall_handler_t *) sys_ni_syscall,
+ [ __NR_vserver ] = (syscall_handler_t *) sys_ni_syscall, \
+ [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_kexec_load, \
+ [ __NR_add_key ] = (syscall_handler_t *) sys_add_key, \
+ [ __NR_request_key ] = (syscall_handler_t *) sys_request_key, \
+ [ __NR_keyctl ] = (syscall_handler_t *) sys_keyctl, \
+ VPERF
+
+#ifdef __NR_vperfctr_open
+#define VPERF \
+ [ __NR_vperfctr_open ] = (syscall_handler_t *) sys_vperfctr_open, \
+ [ __NR_vperfctr_control ] = (syscall_handler_t *) sys_vperfctr_control, \
+ [ __NR_vperfctr_unlink ] = (syscall_handler_t *) sys_vperfctr_unlink, \
+ [ __NR_vperfctr_iresume ] = (syscall_handler_t *) sys_vperfctr_iresume, \
+ [ __NR_vperfctr_read ] = (syscall_handler_t *) sys_vperfctr_read,
+#else
+#define VPERF
+#endif

-/* 222 doesn't yet have a name in include/asm-i386/unistd.h */
-
-#define LAST_ARCH_SYSCALL __NR_vserver
+#define LAST_ARCH_SYSCALL __NR_vperfctr_read

/*
* Overrides for Emacs so that we follow Linus's tabbing style.
Index: 2.6.10/arch/um/kernel/sys_call_table.c
===================================================================
--- 2.6.10.orig/arch/um/kernel/sys_call_table.c 2005-01-16 20:37:24.000000000 -0500
+++ 2.6.10/arch/um/kernel/sys_call_table.c 2005-01-16 20:59:20.000000000 -0500
@@ -20,11 +20,7 @@
#define NFSSERVCTL sys_ni_syscall
#endif

-#if 0
-#define LAST_GENERIC_SYSCALL __NR_vperfctr_read
-#else
-#define LAST_GENERIC_SYSCALL __NR_keyctl
-#endif
+#define LAST_GENERIC_SYSCALL __NR_waitid

#if LAST_GENERIC_SYSCALL > LAST_ARCH_SYSCALL
#define LAST_SYSCALL LAST_GENERIC_SYSCALL
@@ -56,17 +52,8 @@
extern syscall_handler_t sys_mbind;
extern syscall_handler_t sys_get_mempolicy;
extern syscall_handler_t sys_set_mempolicy;
-extern syscall_handler_t sys_sys_kexec_load;
extern syscall_handler_t sys_sys_setaltroot;

-#if 0
-extern syscall_handler_t sys_vperfctr_open;
-extern syscall_handler_t sys_vperfctr_control;
-extern syscall_handler_t sys_vperfctr_unlink;
-extern syscall_handler_t sys_vperfctr_iresume;
-extern syscall_handler_t sys_vperfctr_read;
-#endif
-
syscall_handler_t *sys_call_table[] = {
[ __NR_restart_syscall ] = (syscall_handler_t *) sys_restart_syscall,
[ __NR_exit ] = (syscall_handler_t *) sys_exit,
@@ -280,25 +267,10 @@
[ __NR_mq_timedreceive ] = (syscall_handler_t *) sys_mq_timedreceive,
[ __NR_mq_notify ] = (syscall_handler_t *) sys_mq_notify,
[ __NR_mq_getsetattr ] = (syscall_handler_t *) sys_mq_getsetattr,
-#if 0
- [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_kexec_load,
-#endif
- [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_ni_syscall,
[ __NR_waitid ] = (syscall_handler_t *) sys_waitid,
#if 0
[ __NR_sys_setaltroot ] = (syscall_handler_t *) sys_sys_setaltroot,
#endif
- [ __NR_add_key ] = (syscall_handler_t *) sys_add_key,
- [ __NR_request_key ] = (syscall_handler_t *) sys_request_key,
- [ __NR_keyctl ] = (syscall_handler_t *) sys_keyctl,
- /* These syscalls are still in -mm only*/
-#if 0
- [ __NR_vperfctr_open ] = (syscall_handler_t *) sys_vperfctr_open,
- [ __NR_vperfctr_control ] = (syscall_handler_t *) sys_vperfctr_control,
- [ __NR_vperfctr_unlink ] = (syscall_handler_t *) sys_vperfctr_unlink,
- [ __NR_vperfctr_iresume ] = (syscall_handler_t *) sys_vperfctr_iresume,
- [ __NR_vperfctr_read ] = (syscall_handler_t *) sys_vperfctr_read,
-#endif

ARCH_SYSCALLS
[ LAST_SYSCALL + 1 ... NR_syscalls ] =

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