DragonFly commits List (threaded) for 2013-06
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: kernel - Document bugs in sendfile that we currently punt on
commit 77bf246999b6cb9b4e6a8962a1283d17b2430e54
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Thu Jun 13 18:32:19 2013 -0700
kernel - Document bugs in sendfile that we currently punt on
* sendfile tries to soft-busy the VM pages it backs the mbuf with. This
is meant to prevent the VM page's data from being modified while TCP
is playing with it. However, it doesn't work. There are two issues.
* (1) The page still may be mmap()'d writable. A simple vm_page_protect()
would fix this.
* (2) The page may be associated with a buffer cache buffer and can be
modified via a VOP_WRITE through that buffer regardless of whether
soft-busy or busy is set. This is a real problem.
Even if we find and discard the buffer it can just be reinstantiated
and wind up with the same problem.
From-discussion-with: jeffr, rookie on IRC
Summary of changes:
sys/kern/uipc_syscalls.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/77bf246999b6cb9b4e6a8962a1283d17b2430e54
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]