diff options
author | Volker Lendecke <vl@samba.org> | 2008-12-25 13:44:11 +0100 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2008-12-31 19:33:25 +0100 |
commit | 98f830cdfc8258fb36fc856bef80d25ddedf5c31 (patch) | |
tree | a5d2fffbbf2a79ffeed0baff6da99b91d4f2298f | |
parent | e0fd61f0cbfb0a25c8e9603375c2eb98936c8345 (diff) | |
download | samba-98f830cdfc8258fb36fc856bef80d25ddedf5c31.tar.gz samba-98f830cdfc8258fb36fc856bef80d25ddedf5c31.tar.bz2 samba-98f830cdfc8258fb36fc856bef80d25ddedf5c31.zip |
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...
-rw-r--r-- | source3/lib/recvfile.c | 2 |
1 files changed, 1 insertions, 1 deletions
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, " |