svn commit: r293439 - in head: lib/libc/sys sys/dev/ti sys/kern sys/sys usr.bin/netstat

NGie Cooper yaneurabeya at gmail.com
Fri Jan 8 20:44:36 UTC 2016


> On Jan 8, 2016, at 12:34, Gleb Smirnoff <glebius at FreeBSD.org> wrote:
> 
> Author: glebius
> Date: Fri Jan  8 20:34:57 2016
> New Revision: 293439
> URL: https://svnweb.freebsd.org/changeset/base/293439
> 
> Log:
>  New sendfile(2) syscall. A joint effort of NGINX and Netflix from 2013 and
>  up to now.
> 
>  The new sendfile is the code that Netflix uses to send their multiple tens
>  of gigabits of data per second. The new implementation features asynchronous
>  I/O, when I/O operations are launched, but not awaited to be complete. An
>  explanation of why such behavior is beneficial compared to old one is
>  going to be too long for a commit message, so we will skip it here.
> 
>  Additional features of new syscall are extra flags, which provide an
>  application more control over data sent. The SF_NOCACHE flag tells
>  kernel that data shouldn't be cached after it was sent. The SF_READAHEAD()
>  macro allows to specify readahead size in pages.
> 
>  The new syscalls is a drop in replacement. No modifications are required
>  to applications. One can take nginx binary for stable/10 and run it
>  successfully on head. Although SF_NODISKIO lost its original sense, as now
>  sendfile doesn't block, and now means something completely different (tm),
>  using the new sendfile the old way is absolutely safe.
> 
>  Celebrates:	Netflix global launch!
>  Sponsored by:	Nginx, Inc.
>  Sponsored by:	Netflix
>  Relnotes:	yes

Did anyone review these changes and the other changes made recently to sys/kern and sys/net* ?
Thanks,
-NGie


More information about the svn-src-all mailing list