From 98f830cdfc8258fb36fc856bef80d25ddedf5c31 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Thu, 25 Dec 2008 13:44:11 +0100 Subject: Disable the use of splice(2) On a debian lenny installation with a kernel that calls itself 2.6.28, I could repeatably block smbd using splice. According to the output of netstat, the recvq of the TCP connection was full and at the same time according to strace smbd was stuck in a splice syscall trying to read from that TCP connection. We can not protect ourselves from this condition, as nobody will ever notify us that something is broken. So sadly we can't use splice yet at all. Maybe in 2.6.29... --- source3/lib/recvfile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source3/lib') diff --git a/source3/lib/recvfile.c b/source3/lib/recvfile.c index 41f7213943..c9710a7ebe 100644 --- a/source3/lib/recvfile.c +++ b/source3/lib/recvfile.c @@ -146,7 +146,7 @@ ssize_t sys_recvfile(int fromfd, size_t count) { static int pipefd[2] = { -1, -1 }; - static bool try_splice_call = true; + static bool try_splice_call = false; size_t total_written = 0; DEBUG(10,("sys_recvfile: from = %d, to = %d, " -- cgit