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

2016-01-12 Thread Shawn Webb
On Sat, Jan 09, 2016 at 07:41:57PM +, Antoine Brodin wrote:
> On Fri, Jan 8, 2016 at 8:34 PM, Gleb Smirnoff  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.
> 
> Hi,
> 
> "SF_FLAGS" addition seems to break graphics/graphviz on head.
> See error log at:
> http://beefy3.nyi.freebsd.org/data/head-i386-default/p405601_s293454/logs/errors/graphviz-2.38.0_10.log
> 739 ports are skipped due to this failure.

I've run into this, too.

Thanks,

-- 
Shawn Webb
HardenedBSD

GPG Key ID:  0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE


signature.asc
Description: PGP signature


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

2016-01-12 Thread Adrian Chadd
Has this been addressed yet?


-a


On 12 January 2016 at 07:37, Shawn Webb  wrote:
> On Sat, Jan 09, 2016 at 07:41:57PM +, Antoine Brodin wrote:
>> On Fri, Jan 8, 2016 at 8:34 PM, Gleb Smirnoff  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.
>>
>> Hi,
>>
>> "SF_FLAGS" addition seems to break graphics/graphviz on head.
>> See error log at:
>> http://beefy3.nyi.freebsd.org/data/head-i386-default/p405601_s293454/logs/errors/graphviz-2.38.0_10.log
>> 739 ports are skipped due to this failure.
>
> I've run into this, too.
>
> Thanks,
>
> --
> Shawn Webb
> HardenedBSD
>
> GPG Key ID:  0x6A84658F52456EEE
> GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-12 Thread Gleb Smirnoff
  Antoine said that he is going to handle it.

On Tue, Jan 12, 2016 at 08:19:54AM -0800, Adrian Chadd wrote:
A> Has this been addressed yet?
A> 
A> 
A> -a
A> 
A> 
A> On 12 January 2016 at 07:37, Shawn Webb  wrote:
A> > On Sat, Jan 09, 2016 at 07:41:57PM +, Antoine Brodin wrote:
A> >> On Fri, Jan 8, 2016 at 8:34 PM, Gleb Smirnoff  wrote:
A> >> > Author: glebius
A> >> > Date: Fri Jan  8 20:34:57 2016
A> >> > New Revision: 293439
A> >> > URL: https://svnweb.freebsd.org/changeset/base/293439
A> >> >
A> >> > Log:
A> >> >   New sendfile(2) syscall. A joint effort of NGINX and Netflix from 
2013 and
A> >> >   up to now.
A> >>
A> >> Hi,
A> >>
A> >> "SF_FLAGS" addition seems to break graphics/graphviz on head.
A> >> See error log at:
A> >> 
http://beefy3.nyi.freebsd.org/data/head-i386-default/p405601_s293454/logs/errors/graphviz-2.38.0_10.log
A> >> 739 ports are skipped due to this failure.
A> >
A> > I've run into this, too.
A> >
A> > Thanks,
A> >
A> > --
A> > Shawn Webb
A> > HardenedBSD
A> >
A> > GPG Key ID:  0x6A84658F52456EEE
A> > GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE

-- 
Totus tuus, Glebius.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-09 Thread Gleb Smirnoff
  Antoine,

On Sat, Jan 09, 2016 at 07:41:57PM +, Antoine Brodin wrote:
A> On Fri, Jan 8, 2016 at 8:34 PM, Gleb Smirnoff  wrote:
A> > Author: glebius
A> > Date: Fri Jan  8 20:34:57 2016
A> > New Revision: 293439
A> > URL: https://svnweb.freebsd.org/changeset/base/293439
A> >
A> > Log:
A> >   New sendfile(2) syscall. A joint effort of NGINX and Netflix from 2013 
and
A> >   up to now.
A> 
A> Hi,
A> 
A> "SF_FLAGS" addition seems to break graphics/graphviz on head.
A> See error log at:
A> 
http://beefy3.nyi.freebsd.org/data/head-i386-default/p405601_s293454/logs/errors/graphviz-2.38.0_10.log
A> 739 ports are skipped due to this failure.

I'm reluctant to fix that on our side. The problem comes
from lib/sfio/sfhdr.h in graphviz. This file first includes
"sfio_t.h", a local definitions file, and then includes system
includes. This is clearly an mistake, and the breakage is
exactly the consequence of such kind of mistakes. I can't
imagine a situation when you do want system wide definitions
to overtake yours.

So I suggest to put a patch in the port and submit it upstream.
Any objections? I can do it myself, but would be grateful if
maintainer provides help.

-- 
Totus tuus, Glebius.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-09 Thread Antoine Brodin
On Fri, Jan 8, 2016 at 8:34 PM, Gleb Smirnoff  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.

Hi,

"SF_FLAGS" addition seems to break graphics/graphviz on head.
See error log at:
http://beefy3.nyi.freebsd.org/data/head-i386-default/p405601_s293454/logs/errors/graphviz-2.38.0_10.log
739 ports are skipped due to this failure.

Cheers,

Antoine
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-09 Thread hiren panchasara
I'd also stress on having important details in commit-log itself.

On 01/08/16 at 01:32P, Gleb Smirnoff wrote:
> I'm writing status report on this right now.
Looking forward to it.
> 
> Also there is slideshare: 
> http://www.slideshare.net/facepalmtarbz2/new-sendfile-in-english
Thanks.

Cheers,
Hiren


pgpaKNUtpFEV9.pgp
Description: PGP signature


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

2016-01-08 Thread Gleb Smirnoff
On Fri, Jan 08, 2016 at 12:37:14PM -0800, Bryan Drewery wrote:
B> >   The new syscalls is a drop in replacement. No modifications are required
B> >   to applications. One can take nginx binary for stable/10 and run it
B> >   successfully on head. Although SF_NODISKIO lost its original sense, as 
now
B> >   sendfile doesn't block, and now means something completely different 
(tm),
B> >   using the new sendfile the old way is absolutely safe.
B> >   
B> >   Celebrates:  Netflix global launch!
B> >   Sponsored by:Nginx, Inc.
B> >   Sponsored by:Netflix
B> >   Relnotes:yes
B> > 
B> > Modified:
B> >   head/lib/libc/sys/sendfile.2
B> >   head/sys/dev/ti/if_ti.c
B> >   head/sys/kern/uipc_mbuf.c
B> >   head/sys/kern/uipc_syscalls.c
B> >   head/sys/sys/mbuf.h
B> >   head/sys/sys/sf_buf.h
B> >   head/sys/sys/socket.h
B> >   head/usr.bin/netstat/mbuf.c
B> 
B> Why not merge the branch with full history?

This was already discussed in scope of other project branches, and decision
was that this idea is bad. I don't remember the details. May be subversion
experts will reply.

Anyway, I'm not going to delete the branch soon. Indeed, it has a lot of
interesting stories of success and failures in it :)

-- 
Totus tuus, Glebius.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-08 Thread Gleb Smirnoff
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

Modified:
  head/lib/libc/sys/sendfile.2
  head/sys/dev/ti/if_ti.c
  head/sys/kern/uipc_mbuf.c
  head/sys/kern/uipc_syscalls.c
  head/sys/sys/mbuf.h
  head/sys/sys/sf_buf.h
  head/sys/sys/socket.h
  head/usr.bin/netstat/mbuf.c

Modified: head/lib/libc/sys/sendfile.2
==
--- head/lib/libc/sys/sendfile.2Fri Jan  8 19:47:49 2016
(r293438)
+++ head/lib/libc/sys/sendfile.2Fri Jan  8 20:34:57 2016
(r293439)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 7, 2010
+.Dd January 7, 2016
 .Dt SENDFILE 2
 .Os
 .Sh NAME
@@ -46,7 +46,7 @@
 The
 .Fn sendfile
 system call
-sends a regular file specified by descriptor
+sends a regular file or shared memory object specified by descriptor
 .Fa fd
 out a stream socket specified by descriptor
 .Fa s .
@@ -101,32 +101,55 @@ the system will write the total number o
 variable pointed to by
 .Fa sbytes .
 .Pp
-The
+The least significant 16 bits of
 .Fa flags
 argument is a bitmap of these values:
-.Bl -item -offset indent
-.It
-.Dv SF_NODISKIO .
-This flag causes any
-.Fn sendfile
-call which would block on disk I/O to instead
-return
-.Er EBUSY .
-Busy servers may benefit by transferring requests that would
-block to a separate I/O worker thread.
-.It
-.Dv SF_MNOWAIT .
-Do not wait for some kernel resource to become available,
-in particular,
-.Vt mbuf
-and
-.Vt sf_buf .
-The flag does not make the
-.Fn sendfile
-syscall truly non-blocking, since other resources are still allocated
-in a blocking fashion.
-.It
-.Dv SF_SYNC .
+.Bl -tag -offset indent
+.It Dv SF_NODISKIO
+This flag causes
+.Nm
+to return
+.Er EBUSY
+instead of blocking when a busy page is encountered.
+This rare situation can happen if some other process is now working
+with the same region of the file.
+It is advised to retry the operation after a short period.
+.Pp
+Note that in older
+.Fx
+versions the
+.Dv SF_NODISKIO
+had slightly different notion.
+The flag prevented
+.Nm
+to run I/O operations in case if an invalid (not cached) page is encountered,
+thus avoiding blocking on I/O.
+Starting with
+.Fx 11
+.Nm
+sending files off the
+.Xr ffs 7
+filesystem doesn't block on I/O
+(see 
+.Sx IMPLEMENTATION NOTES
+), so the condition no longer applies.
+However, it is safe if an application utilizes
+.Dv SF_NODISKIO
+and on
+.Er EBUSY
+performs the same action as it did in
+older
+.Fx
+versions, e.g.
+.Xr aio_read 2,
+.Xr read 2
+or
+.Nm
+in a different context.
+.It Dv SF_NOCACHE
+The data sent to socket will not be cached by the virtual memory system,
+and will be freed directly to the pool of free pages.
+.It Dv SF_SYNC
 .Nm
 sleeps until the network stack no longer references the VM pages
 of the file, making subsequent modifications to it safe.
@@ -134,6 +157,22 @@ Please note that this is not a guarantee
 been sent.
 .El
 .Pp
+The most significant 16 bits of
+.Fa flags
+specify amount of pages that
+.Nm
+may read ahead when reading the file.
+A macro
+.Fn SF_FLAGS
+is provided to combine readahead amount and flags.
+Example shows specifing readahead of 16 pages and
+.Dv SF_NOCACHE
+flag:
+.Pp
+.Bd -literal -offset indent -compact
+   SF_FLAGS(16, SF_NOCACHE)
+.Ed
+.Pp
 When using a socket marked for non-blocking I/O,
 .Fn sendfile
 may send fewer bytes than requested.
@@ -149,6 +188,18 @@ The
 .Fx
 implementation of
 .Fn sendfile
+doesn't block on disk I/O when it sends a file off the
+.Xr ffs 7
+filesystem.
+The syscall returns success before the actual I/O completes, and data
+is put into the socket later unattended.
+However, the order of data in the socket is preserved, so 

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

2016-01-08 Thread Gleb Smirnoff
On Fri, Jan 08, 2016 at 01:22:45PM -0800, NGie Cooper wrote:
N> > 1) The review requests were sent continuosly to arch@ during last 1.5 
years.
N> > 
N> >   https://lists.freebsd.org/pipermail/freebsd-arch/2014-May/015385.html
N> > 
N> > 2) Team of engineers at Netflix has a lot of code build on top of that 
code,
N> >   e.g. SSL_sendfile(). Of course, writing something on top assumes 
reviewing,
N> >   so assume it reviewed thoroughly by rrs@. Actually, here is list of 
people
N> >   who did some review of the code: emax@, rrs@, scottl@, gallatin@, imp@.
N> > 
N> > 3) Do you have any particulars concerns with this change or those made 
recently
N> >   to sys/kern and sys/net*?
N> 
N> I don’t as of right now, other than it’s really difficult to audit changes 
and assess risk if someone doesn’t have access to the CRs :(.
N> 
N> Also…
N> 
N> N> >  An
N> N> >  explanation of why such behavior is beneficial compared to old one is
N> N> >  going to be too long for a commit message, so we will skip it here.
N> 
N> This wasn’t really helpful. It would have been nice if there was a wiki page 
or some other reference used in this commit which would have described the 
where, why, and how behind this change a lot more.

I'm writing status report on this right now.

Also there is slideshare: 
http://www.slideshare.net/facepalmtarbz2/new-sendfile-in-english

And there is even a paper, alas in Russian.

-- 
Totus tuus, Glebius.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

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

2016-01-08 Thread Gleb Smirnoff
On Fri, Jan 08, 2016 at 12:44:32PM -0800, NGie Cooper wrote:
N> > Log:
N> >  New sendfile(2) syscall. A joint effort of NGINX and Netflix from 2013 and
N> >  up to now.
N> > 
N> >  The new sendfile is the code that Netflix uses to send their multiple tens
N> >  of gigabits of data per second. The new implementation features 
asynchronous
N> >  I/O, when I/O operations are launched, but not awaited to be complete. An
N> >  explanation of why such behavior is beneficial compared to old one is
N> >  going to be too long for a commit message, so we will skip it here.
N> > 
N> >  Additional features of new syscall are extra flags, which provide an
N> >  application more control over data sent. The SF_NOCACHE flag tells
N> >  kernel that data shouldn't be cached after it was sent. The SF_READAHEAD()
N> >  macro allows to specify readahead size in pages.
N> > 
N> >  The new syscalls is a drop in replacement. No modifications are required
N> >  to applications. One can take nginx binary for stable/10 and run it
N> >  successfully on head. Although SF_NODISKIO lost its original sense, as now
N> >  sendfile doesn't block, and now means something completely different (tm),
N> >  using the new sendfile the old way is absolutely safe.
N> > 
N> >  Celebrates:   Netflix global launch!
N> >  Sponsored by: Nginx, Inc.
N> >  Sponsored by: Netflix
N> >  Relnotes: yes
N> 
N> Did anyone review these changes and the other changes made recently to 
sys/kern and sys/net* ?

1) The review requests were sent continuosly to arch@ during last 1.5 years.

   https://lists.freebsd.org/pipermail/freebsd-arch/2014-May/015385.html

2) Team of engineers at Netflix has a lot of code build on top of that code,
   e.g. SSL_sendfile(). Of course, writing something on top assumes reviewing,
   so assume it reviewed thoroughly by rrs@. Actually, here is list of people
   who did some review of the code: emax@, rrs@, scottl@, gallatin@, imp@.

3) Do you have any particulars concerns with this change or those made recently
   to sys/kern and sys/net*?

-- 
Totus tuus, Glebius.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-08 Thread NGie Cooper

> On Jan 8, 2016, at 13:10, Gleb Smirnoff  wrote:
> 
> On Fri, Jan 08, 2016 at 12:44:32PM -0800, NGie Cooper wrote:
> N> > Log:
> N> >  New sendfile(2) syscall. A joint effort of NGINX and Netflix from 2013 
> and
> N> >  up to now.
> N> > 
> N> >  The new sendfile is the code that Netflix uses to send their multiple 
> tens
> N> >  of gigabits of data per second. The new implementation features 
> asynchronous
> N> >  I/O, when I/O operations are launched, but not awaited to be complete. 
> An
> N> >  explanation of why such behavior is beneficial compared to old one is
> N> >  going to be too long for a commit message, so we will skip it here.
> N> > 
> N> >  Additional features of new syscall are extra flags, which provide an
> N> >  application more control over data sent. The SF_NOCACHE flag tells
> N> >  kernel that data shouldn't be cached after it was sent. The 
> SF_READAHEAD()
> N> >  macro allows to specify readahead size in pages.
> N> > 
> N> >  The new syscalls is a drop in replacement. No modifications are required
> N> >  to applications. One can take nginx binary for stable/10 and run it
> N> >  successfully on head. Although SF_NODISKIO lost its original sense, as 
> now
> N> >  sendfile doesn't block, and now means something completely different 
> (tm),
> N> >  using the new sendfile the old way is absolutely safe.
> N> > 
> N> >  Celebrates: Netflix global launch!
> N> >  Sponsored by:   Nginx, Inc.
> N> >  Sponsored by:   Netflix
> N> >  Relnotes:   yes
> N> 
> N> Did anyone review these changes and the other changes made recently to 
> sys/kern and sys/net* ?
> 
> 1) The review requests were sent continuosly to arch@ during last 1.5 years.
> 
>   https://lists.freebsd.org/pipermail/freebsd-arch/2014-May/015385.html
> 
> 2) Team of engineers at Netflix has a lot of code build on top of that code,
>   e.g. SSL_sendfile(). Of course, writing something on top assumes reviewing,
>   so assume it reviewed thoroughly by rrs@. Actually, here is list of people
>   who did some review of the code: emax@, rrs@, scottl@, gallatin@, imp@.
> 
> 3) Do you have any particulars concerns with this change or those made 
> recently
>   to sys/kern and sys/net*?

I don’t as of right now, other than it’s really difficult to audit changes and 
assess risk if someone doesn’t have access to the CRs :(.

Also…

N> >  An
N> >  explanation of why such behavior is beneficial compared to old one is
N> >  going to be too long for a commit message, so we will skip it here.

This wasn’t really helpful. It would have been nice if there was a wiki page or 
some other reference used in this commit which would have described the where, 
why, and how behind this change a lot more.

Thanks,
-NGie
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

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

2016-01-08 Thread Bryan Drewery
On 1/8/2016 12:34 PM, Gleb Smirnoff 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
> 
> Modified:
>   head/lib/libc/sys/sendfile.2
>   head/sys/dev/ti/if_ti.c
>   head/sys/kern/uipc_mbuf.c
>   head/sys/kern/uipc_syscalls.c
>   head/sys/sys/mbuf.h
>   head/sys/sys/sf_buf.h
>   head/sys/sys/socket.h
>   head/usr.bin/netstat/mbuf.c

Why not merge the branch with full history?

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


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

2016-01-08 Thread NGie Cooper

> On Jan 8, 2016, at 12:34, Gleb Smirnoff  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
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


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

2016-01-08 Thread Bryan Drewery
On 1/8/2016 1:10 PM, Gleb Smirnoff wrote:
> 1) The review requests were sent continuosly to arch@ during last 1.5 years.
> 
>https://lists.freebsd.org/pipermail/freebsd-arch/2014-May/015385.html
> 
> 2) Team of engineers at Netflix has a lot of code build on top of that code,
>e.g. SSL_sendfile(). Of course, writing something on top assumes reviewing,
>so assume it reviewed thoroughly by rrs@. Actually, here is list of people
>who did some review of the code: emax@, rrs@, scottl@, gallatin@, imp@.

All of which should be in the commit msg!

There's even https://reviews.freebsd.org/D102

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature