From owner-svn-src-all@FreeBSD.ORG Fri Mar 15 13:56:41 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B69CDF6C for ; Fri, 15 Mar 2013 13:56:41 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 2D6E3235 for ; Fri, 15 Mar 2013 13:56:41 +0000 (UTC) Received: (qmail 64802 invoked from network); 15 Mar 2013 15:08:41 -0000 Received: from c00l3r.networx.ch (HELO [127.0.0.1]) ([62.48.2.2]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 15 Mar 2013 15:08:41 -0000 Message-ID: <51432894.9000504@freebsd.org> Date: Fri, 15 Mar 2013 14:56:36 +0100 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130215 Thunderbird/17.0.3 MIME-Version: 1.0 To: Gleb Smirnoff Subject: Re: svn commit: r248323 - head/sys/netinet References: <201303151253.r2FCrsSs016150@svn.freebsd.org> <51431B89.5010501@freebsd.org> <20130315134657.GL48089@FreeBSD.org> In-Reply-To: <20130315134657.GL48089@FreeBSD.org> Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Mar 2013 13:56:41 -0000 On 15.03.2013 14:46, Gleb Smirnoff wrote: > On Fri, Mar 15, 2013 at 02:00:57PM +0100, Andre Oppermann wrote: > A> On 15.03.2013 13:53, Gleb Smirnoff wrote: > A> > Author: glebius > A> > Date: Fri Mar 15 12:53:53 2013 > A> > New Revision: 248323 > A> > URL: http://svnweb.freebsd.org/changeset/base/248323 > A> > > A> > Log: > A> > - Use m_getcl() instead of hand allocating. > A> > > A> > Sponsored by: Nginx, Inc. > A> > > A> > Modified: > A> > head/sys/netinet/tcp_output.c > A> > > A> > Modified: head/sys/netinet/tcp_output.c > A> > ============================================================================== > A> > --- head/sys/netinet/tcp_output.c Fri Mar 15 12:52:59 2013 (r248322) > A> > +++ head/sys/netinet/tcp_output.c Fri Mar 15 12:53:53 2013 (r248323) > A> > @@ -842,23 +842,19 @@ send: > A> > TCPSTAT_INC(tcps_sndpack); > A> > TCPSTAT_ADD(tcps_sndbyte, len); > A> > } > A> > - MGETHDR(m, M_NOWAIT, MT_DATA); > A> > +#ifdef INET6 > A> > + if (MHLEN < hdrlen + max_linkhdr) > A> > + m = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR); > A> > + else > A> > +#endif > A> > + m = m_gethdr(M_NOWAIT, MT_DATA); > A> > + > A> > A> m = m_getm2(hdrlen + max_linkhdr, M_NOWAIT, MT_DATA, M_PKTHDR); > A> > A> would be even more compact. Since max_linkhdr could be large as well, > A> the possibility of a cluster applies to IPv4 too. > > m_getm2() may return chain. According to argument list, you probably > meant m_get2(). Yes, that would be more compat. > > But, again, I am not sure that using pagesized cluster won't break > anything. > > If you are sure, feel free to change that. Oops, I meant m_get2(), not m_getm2(). -- Andre