fs: remove various compat readv/writev helpers
Now that import_iovec handles compat iovecs as well, all the duplicated code in the compat readv/writev helpers is not needed. Remove them and switch the compat syscall handlers to use the native helpers. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:

committed by
Al Viro

parent
89cd35c58b
commit
3523a9d454
@@ -546,25 +546,25 @@ asmlinkage long compat_sys_getdents(unsigned int fd,
|
||||
/* fs/read_write.c */
|
||||
asmlinkage long compat_sys_lseek(unsigned int, compat_off_t, unsigned int);
|
||||
asmlinkage ssize_t compat_sys_readv(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec, compat_ulong_t vlen);
|
||||
const struct iovec __user *vec, compat_ulong_t vlen);
|
||||
asmlinkage ssize_t compat_sys_writev(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec, compat_ulong_t vlen);
|
||||
const struct iovec __user *vec, compat_ulong_t vlen);
|
||||
/* No generic prototype for pread64 and pwrite64 */
|
||||
asmlinkage ssize_t compat_sys_preadv(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
compat_ulong_t vlen, u32 pos_low, u32 pos_high);
|
||||
asmlinkage ssize_t compat_sys_pwritev(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
compat_ulong_t vlen, u32 pos_low, u32 pos_high);
|
||||
#ifdef __ARCH_WANT_COMPAT_SYS_PREADV64
|
||||
asmlinkage long compat_sys_preadv64(unsigned long fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
unsigned long vlen, loff_t pos);
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_SYS_PWRITEV64
|
||||
asmlinkage long compat_sys_pwritev64(unsigned long fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
unsigned long vlen, loff_t pos);
|
||||
#endif
|
||||
|
||||
@@ -800,20 +800,20 @@ asmlinkage long compat_sys_execveat(int dfd, const char __user *filename,
|
||||
const compat_uptr_t __user *argv,
|
||||
const compat_uptr_t __user *envp, int flags);
|
||||
asmlinkage ssize_t compat_sys_preadv2(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
|
||||
asmlinkage ssize_t compat_sys_pwritev2(compat_ulong_t fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
|
||||
#ifdef __ARCH_WANT_COMPAT_SYS_PREADV64V2
|
||||
asmlinkage long compat_sys_preadv64v2(unsigned long fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
unsigned long vlen, loff_t pos, rwf_t flags);
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_SYS_PWRITEV64V2
|
||||
asmlinkage long compat_sys_pwritev64v2(unsigned long fd,
|
||||
const struct compat_iovec __user *vec,
|
||||
const struct iovec __user *vec,
|
||||
unsigned long vlen, loff_t pos, rwf_t flags);
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user