41 lines
1.5 KiB
Diff
41 lines
1.5 KiB
Diff
From: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Date: Thu, 13 Aug 2009 15:28:36 +0000 (-0700)
|
|
Subject: Make sock_sendpage() use kernel_sendpage()
|
|
X-Git-Tag: v2.6.27.30~2
|
|
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fstable%2Flinux-2.6.27.y.git;a=commitdiff_plain;h=b70cadcb8e5bd341dfc2e88a749d7110bfc8200d
|
|
|
|
Make sock_sendpage() use kernel_sendpage()
|
|
|
|
commit e694958388c50148389b0e9b9e9e8945cf0f1b98 upstream.
|
|
|
|
kernel_sendpage() does the proper default case handling for when the
|
|
socket doesn't have a native sendpage implementation.
|
|
|
|
Now, arguably this might be something that we could instead solve by
|
|
just specifying that all protocols should do it themselves at the
|
|
protocol level, but we really only care about the common protocols.
|
|
Does anybody really care about sendpage on something like Appletalk? Not
|
|
likely.
|
|
|
|
Acked-by: David S. Miller <davem@davemloft.net>
|
|
Acked-by: Julien TINNES <julien@cr0.org>
|
|
Acked-by: Tavis Ormandy <taviso@sdf.lonestar.org>
|
|
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
|
|
---
|
|
|
|
diff --git a/net/socket.c b/net/socket.c
|
|
index 3e2859c..058d965 100644
|
|
--- a/net/socket.c
|
|
+++ b/net/socket.c
|
|
@@ -695,7 +695,7 @@ static ssize_t sock_sendpage(struct file *file, struct page *page,
|
|
if (more)
|
|
flags |= MSG_MORE;
|
|
|
|
- return sock->ops->sendpage(sock, page, offset, size, flags);
|
|
+ return kernel_sendpage(sock, page, offset, size, flags);
|
|
}
|
|
|
|
static ssize_t sock_splice_read(struct file *file, loff_t *ppos,
|
|
|