diff options
Diffstat (limited to 'include/linux/compat.h')
| -rw-r--r-- | include/linux/compat.h | 68 | 
1 files changed, 68 insertions, 0 deletions
| diff --git a/include/linux/compat.h b/include/linux/compat.h index 01fddf72a81f..594357881b0b 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -259,6 +259,37 @@ struct compat_rlimit {  	compat_ulong_t	rlim_max;  }; +#ifdef __ARCH_NEED_COMPAT_FLOCK64_PACKED +#define __ARCH_COMPAT_FLOCK64_PACK	__attribute__((packed)) +#else +#define __ARCH_COMPAT_FLOCK64_PACK +#endif + +struct compat_flock { +	short			l_type; +	short			l_whence; +	compat_off_t		l_start; +	compat_off_t		l_len; +#ifdef __ARCH_COMPAT_FLOCK_EXTRA_SYSID +	__ARCH_COMPAT_FLOCK_EXTRA_SYSID +#endif +	compat_pid_t		l_pid; +#ifdef __ARCH_COMPAT_FLOCK_PAD +	__ARCH_COMPAT_FLOCK_PAD +#endif +}; + +struct compat_flock64 { +	short		l_type; +	short		l_whence; +	compat_loff_t	l_start; +	compat_loff_t	l_len; +	compat_pid_t	l_pid; +#ifdef __ARCH_COMPAT_FLOCK64_PAD +	__ARCH_COMPAT_FLOCK64_PAD +#endif +} __ARCH_COMPAT_FLOCK64_PACK; +  struct compat_rusage {  	struct old_timeval32 ru_utime;  	struct old_timeval32 ru_stime; @@ -896,6 +927,43 @@ asmlinkage long compat_sys_sigaction(int sig,  /* obsolete: net/socket.c */  asmlinkage long compat_sys_socketcall(int call, u32 __user *args); +#ifdef __ARCH_WANT_COMPAT_TRUNCATE64 +asmlinkage long compat_sys_truncate64(const char __user *pathname, compat_arg_u64(len)); +#endif + +#ifdef __ARCH_WANT_COMPAT_FTRUNCATE64 +asmlinkage long compat_sys_ftruncate64(unsigned int fd, compat_arg_u64(len)); +#endif + +#ifdef __ARCH_WANT_COMPAT_FALLOCATE +asmlinkage long compat_sys_fallocate(int fd, int mode, compat_arg_u64(offset), +				     compat_arg_u64(len)); +#endif + +#ifdef __ARCH_WANT_COMPAT_PREAD64 +asmlinkage long compat_sys_pread64(unsigned int fd, char __user *buf, size_t count, +				   compat_arg_u64(pos)); +#endif + +#ifdef __ARCH_WANT_COMPAT_PWRITE64 +asmlinkage long compat_sys_pwrite64(unsigned int fd, const char __user *buf, size_t count, +				    compat_arg_u64(pos)); +#endif + +#ifdef __ARCH_WANT_COMPAT_SYNC_FILE_RANGE +asmlinkage long compat_sys_sync_file_range(int fd, compat_arg_u64(pos), +					   compat_arg_u64(nbytes), unsigned int flags); +#endif + +#ifdef __ARCH_WANT_COMPAT_FADVISE64_64 +asmlinkage long compat_sys_fadvise64_64(int fd, compat_arg_u64(pos), +					compat_arg_u64(len), int advice); +#endif + +#ifdef __ARCH_WANT_COMPAT_READAHEAD +asmlinkage long compat_sys_readahead(int fd, compat_arg_u64(offset), size_t count); +#endif +  #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */  /** | 
