syscalls.h 989 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright 2003 PathScale, Inc.
  3. *
  4. * Licensed under the GPL
  5. */
  6. #ifndef __SYSDEP_X86_64_SYSCALLS_H__
  7. #define __SYSDEP_X86_64_SYSCALLS_H__
  8. #include <linux/msg.h>
  9. #include <linux/shm.h>
  10. typedef long syscall_handler_t(void);
  11. extern syscall_handler_t *ia32_sys_call_table[];
  12. extern syscall_handler_t *sys_call_table[];
  13. #define EXECUTE_SYSCALL(syscall, regs) \
  14. (((long (*)(long, long, long, long, long, long)) \
  15. (*sys_call_table[syscall]))(UPT_SYSCALL_ARG1(&regs->regs), \
  16. UPT_SYSCALL_ARG2(&regs->regs), \
  17. UPT_SYSCALL_ARG3(&regs->regs), \
  18. UPT_SYSCALL_ARG4(&regs->regs), \
  19. UPT_SYSCALL_ARG5(&regs->regs), \
  20. UPT_SYSCALL_ARG6(&regs->regs)))
  21. extern long old_mmap(unsigned long addr, unsigned long len,
  22. unsigned long prot, unsigned long flags,
  23. unsigned long fd, unsigned long pgoff);
  24. extern syscall_handler_t sys_modify_ldt;
  25. extern syscall_handler_t sys_arch_prctl;
  26. #define NR_syscalls (__NR_syscall_max + 1)
  27. #endif