From owner-svn-src-head@freebsd.org Fri Jan 8 21:22:49 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71019A689D1; Fri, 8 Jan 2016 21:22:49 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x234.google.com (mail-pf0-x234.google.com [IPv6:2607:f8b0:400e:c00::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46C891BBE; Fri, 8 Jan 2016 21:22:49 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x234.google.com with SMTP id e65so14879825pfe.0; Fri, 08 Jan 2016 13:22:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=HaRunJcAMVCd+7d4kS56k3a4Qx1hEsgQ9SV1zfRDULE=; b=y5z8ODTL7ErhceTO0FnjsZ7FhA3Oe5J3jzWgZxSERx3nDud9Y8rqoc50RWKux/bOEI +akyNyZWTCsopVm0+C3qz7i3Va6xKaCnLKMeAN3P6U6pAmSHehMOtdZwp0cqJewQLX0T oU4wSMgG84qYU7Nu4GIH7EdbtCMAo1JkqSseyNP0u4WIughL1h7WNvpAXAR806IEVpPC QFUrPW7cy58pWLL7R0NbORB0OGZfIGjBJZTRb9nJCYQnmw47h/XrrziWvAIKENFOJ+5y jiXmBdK7539Jr8s2GWjap46njRvnt2U+8KEzS+PtvdYwKBhNXh8p3SlAZ6kPVWcFDIZo 3WbQ== X-Received: by 10.98.14.80 with SMTP id w77mr7475498pfi.152.1452288168828; Fri, 08 Jan 2016 13:22:48 -0800 (PST) Received: from [192.168.20.7] (c-24-16-212-205.hsd1.wa.comcast.net. [24.16.212.205]) by smtp.gmail.com with ESMTPSA id v7sm6787007pfa.77.2016.01.08.13.22.46 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 08 Jan 2016 13:22:47 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: svn commit: r293439 - in head: lib/libc/sys sys/dev/ti sys/kern sys/sys usr.bin/netstat From: NGie Cooper In-Reply-To: <20160108211041.GG1906@FreeBSD.org> Date: Fri, 8 Jan 2016 13:22:45 -0800 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <88B48C42-DFEF-4CAE-973E-BDF2A408B4A3@gmail.com> References: <201601082034.u08KYvLv075281@repo.freebsd.org> <96B980EE-FD2F-490E-BA5E-4F23A67CEB18@gmail.com> <20160108211041.GG1906@FreeBSD.org> To: Gleb Smirnoff X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2016 21:22:49 -0000 > On Jan 8, 2016, at 13:10, Gleb Smirnoff wrote: >=20 > 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> >=20 > 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> >=20 > 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> >=20 > 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> >=20 > N> > Celebrates: Netflix global launch! > N> > Sponsored by: Nginx, Inc. > N> > Sponsored by: Netflix > N> > Relnotes: yes > N>=20 > N> Did anyone review these changes and the other changes made recently = to sys/kern and sys/net* ? >=20 > 1) The review requests were sent continuosly to arch@ during last 1.5 = years. >=20 > = https://lists.freebsd.org/pipermail/freebsd-arch/2014-May/015385.html >=20 > 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@. >=20 > 3) Do you have any particulars concerns with this change or those made = recently > to sys/kern and sys/net*? I don=E2=80=99t as of right now, other than it=E2=80=99s really = difficult to audit changes and assess risk if someone doesn=E2=80=99t = have access to the CRs :(. Also=E2=80=A6 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=E2=80=99t 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=