Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
syscall.h
Go to the documentation of this file.
1 /*
2  * Access to user system call parameters and results
3  *
4  * Copyright (C) 2008-2009 Red Hat, Inc. All rights reserved.
5  *
6  * This copyrighted material is made available to anyone wishing to use,
7  * modify, copy, or redistribute it subject to the terms and conditions
8  * of the GNU General Public License v.2.
9  *
10  * This file is a stub providing documentation for what functions
11  * asm-ARCH/syscall.h files need to define. Most arch definitions
12  * will be simple inlines.
13  *
14  * All of these functions expect to be called with no locks,
15  * and only when the caller is sure that the task of interest
16  * cannot return to user mode while we are looking at it.
17  */
18 
19 #ifndef _ASM_SYSCALL_H
20 #define _ASM_SYSCALL_H 1
21 
22 struct task_struct;
23 struct pt_regs;
24 
41 int syscall_get_nr(struct task_struct *task, struct pt_regs *regs);
42 
59 void syscall_rollback(struct task_struct *task, struct pt_regs *regs);
60 
71 long syscall_get_error(struct task_struct *task, struct pt_regs *regs);
72 
85 
102  int error, long val);
103 
121 void syscall_get_arguments(struct task_struct *task, struct pt_regs *regs,
122  unsigned int i, unsigned int n, unsigned long *args);
123 
141 void syscall_set_arguments(struct task_struct *task, struct pt_regs *regs,
142  unsigned int i, unsigned int n,
143  const unsigned long *args);
144 
158 int syscall_get_arch(struct task_struct *task, struct pt_regs *regs);
159 #endif /* _ASM_SYSCALL_H */