aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorBadari Pulavarty <pbadari@us.ibm.com>2006-10-01 02:28:47 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-01 03:39:28 -0400
commitee0b3e671baff681d69fbf0db33b47603c0a8280 (patch)
tree3202ff815b2196c6c353bc5b28d7a2800df273ec /net
parent027445c37282bc1ed26add45e573ad2d3e4860a5 (diff)
[PATCH] Remove readv/writev methods and use aio_read/aio_write instead
This patch removes readv() and writev() methods and replaces them with aio_read()/aio_write() methods. Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'net')
-rw-r--r--net/socket.c40
1 files changed, 0 insertions, 40 deletions
diff --git a/net/socket.c b/net/socket.c
index df92e4252749..01918f7a301a 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -110,10 +110,6 @@ static long compat_sock_ioctl(struct file *file,
110 unsigned int cmd, unsigned long arg); 110 unsigned int cmd, unsigned long arg);
111#endif 111#endif
112static int sock_fasync(int fd, struct file *filp, int on); 112static int sock_fasync(int fd, struct file *filp, int on);
113static ssize_t sock_readv(struct file *file, const struct iovec *vector,
114 unsigned long count, loff_t *ppos);
115static ssize_t sock_writev(struct file *file, const struct iovec *vector,
116 unsigned long count, loff_t *ppos);
117static ssize_t sock_sendpage(struct file *file, struct page *page, 113static ssize_t sock_sendpage(struct file *file, struct page *page,
118 int offset, size_t size, loff_t *ppos, int more); 114 int offset, size_t size, loff_t *ppos, int more);
119 115
@@ -136,8 +132,6 @@ static struct file_operations socket_file_ops = {
136 .open = sock_no_open, /* special open code to disallow open via /proc */ 132 .open = sock_no_open, /* special open code to disallow open via /proc */
137 .release = sock_close, 133 .release = sock_close,
138 .fasync = sock_fasync, 134 .fasync = sock_fasync,
139 .readv = sock_readv,
140 .writev = sock_writev,
141 .sendpage = sock_sendpage, 135 .sendpage = sock_sendpage,
142 .splice_write = generic_splice_sendpage, 136 .splice_write = generic_splice_sendpage,
143}; 137};
@@ -700,23 +694,6 @@ static ssize_t do_sock_read(struct msghdr *msg, struct kiocb *iocb,
700 return __sock_recvmsg(iocb, sock, msg, size, msg->msg_flags); 694 return __sock_recvmsg(iocb, sock, msg, size, msg->msg_flags);
701} 695}
702 696
703static ssize_t sock_readv(struct file *file, const struct iovec *iov,
704 unsigned long nr_segs, loff_t *ppos)
705{
706 struct kiocb iocb;
707 struct sock_iocb siocb;
708 struct msghdr msg;
709 int ret;
710
711 init_sync_kiocb(&iocb, NULL);
712 iocb.private = &siocb;
713
714 ret = do_sock_read(&msg, &iocb, file, iov, nr_segs);
715 if (-EIOCBQUEUED == ret)
716 ret = wait_on_sync_kiocb(&iocb);
717 return ret;
718}
719
720static ssize_t sock_aio_read(struct kiocb *iocb, const struct iovec *iov, 697static ssize_t sock_aio_read(struct kiocb *iocb, const struct iovec *iov,
721 unsigned long nr_segs, loff_t pos) 698 unsigned long nr_segs, loff_t pos)
722{ 699{
@@ -759,23 +736,6 @@ static ssize_t do_sock_write(struct msghdr *msg, struct kiocb *iocb,
759 return __sock_sendmsg(iocb, sock, msg, size); 736 return __sock_sendmsg(iocb, sock, msg, size);
760} 737}
761 738
762static ssize_t sock_writev(struct file *file, const struct iovec *iov,
763 unsigned long nr_segs, loff_t *ppos)
764{
765 struct msghdr msg;
766 struct kiocb iocb;
767 struct sock_iocb siocb;
768 int ret;
769
770 init_sync_kiocb(&iocb, NULL);
771 iocb.private = &siocb;
772
773 ret = do_sock_write(&msg, &iocb, file, iov, nr_segs);
774 if (-EIOCBQUEUED == ret)
775 ret = wait_on_sync_kiocb(&iocb);
776 return ret;
777}
778
779static ssize_t sock_aio_write(struct kiocb *iocb, const struct iovec *iov, 739static ssize_t sock_aio_write(struct kiocb *iocb, const struct iovec *iov,
780 unsigned long nr_segs, loff_t pos) 740 unsigned long nr_segs, loff_t pos)
781{ 741{