diff options
Diffstat (limited to 'include/linux/syscalls.h')
| -rw-r--r-- | include/linux/syscalls.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index f2c973e8290..a41238234b7 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@ -77,6 +77,8 @@ struct sigaltstack; #include <linux/quota.h> #include <linux/key.h> #include <trace/syscall.h> +#undef CREATE_TRACE_POINTS +#include <trace/events/sys_calls.h> /* * __MAP - apply a macro to syscall arguments @@ -189,7 +191,10 @@ extern struct trace_event_functions exit_syscall_print_funcs; static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \ asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ { \ - long ret = SYSC##name(__MAP(x,__SC_CAST,__VA_ARGS__)); \ + long ret; \ + trace_syscall_enter(""#name); \ + ret = SYSC##name(__MAP(x,__SC_CAST,__VA_ARGS__)); \ + trace_syscall_exit(""#name); \ __MAP(x,__SC_TEST,__VA_ARGS__); \ __PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__)); \ return ret; \ @@ -514,7 +519,7 @@ asmlinkage long sys_chown(const char __user *filename, asmlinkage long sys_lchown(const char __user *filename, uid_t user, gid_t group); asmlinkage long sys_fchown(unsigned int fd, uid_t user, gid_t group); -#ifdef CONFIG_UID16 +#ifdef CONFIG_HAVE_UID16 asmlinkage long sys_chown16(const char __user *filename, old_uid_t user, old_gid_t group); asmlinkage long sys_lchown16(const char __user *filename, @@ -818,9 +823,14 @@ asmlinkage long sys_vfork(void); asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, int, int __user *); #else +#ifdef CONFIG_CLONE_BACKWARDS3 +asmlinkage long sys_clone(unsigned long, unsigned long, int, int __user *, + int __user *, int); +#else asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, int __user *, int); #endif +#endif asmlinkage long sys_execve(const char __user *filename, const char __user *const __user *argv, @@ -859,4 +869,8 @@ asmlinkage long sys_kcmp(pid_t pid1, pid_t pid2, int type, asmlinkage long sys_finit_module(int fd, const char __user *uargs, int flags); asmlinkage long sys_seccomp(unsigned int op, unsigned int flags, const char __user *uargs); + +asmlinkage long sys_getrandom(char __user *buf, size_t count, + unsigned int flags); + #endif |
