[prev in list] [next in list] [prev in thread] [next in thread]
List: dragonfly-commits
Subject: git: kernel - Refactor kern_sendfile()
From: dillon () crater ! dragonflybsd ! org (Matthew Dillon)
Date: 2017-10-31 17:49:58
Message-ID: 20171031174958.66FD0B1DEAAE73 () crater ! dragonflybsd ! org
[Download RAW message or body]
commit e7cb11ec46aea8b0515575369f26c95747b67d53
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Fri Oct 20 12:01:43 2017 -0700
kernel - Refactor kern_sendfile()
* Refactor kern_sendfile() to greatly improve performance.
* Use vm_page_lookup_sbusy_try() exclusively to acquire VM pages
to assign to the mbufs.
* Instead of holding pages in a fancy manner, just issue the
UIO_NOCOPY / VMIO VOP_READ() in the blind and loop up.
* The VOP_READ() is still synchronous. It is really unclear
whether asynchronizing VOP_READ() via the pagerops would
really improve performance verses simply implementing a
limited number of connections per worker. At least in
localhost tests, we seem to be hitting a hardware memory
bottleneck long before we hit a cpu bottleneck.
Summary of changes:
sys/kern/uipc_syscalls.c | 145 ++++++++++++++++-------------------------------
1 file changed, 48 insertions(+), 97 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e7cb11ec46aea8b0515575369f26c95747b67d53
--
DragonFly BSD source repository
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic