From owner-svn-src-head@freebsd.org Tue Jan 26 22:44:41 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 62C5CA6E57E; Tue, 26 Jan 2016 22:44:41 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (glebi.us [96.95.210.25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4EF4B1442; Tue, 26 Jan 2016 22:44:40 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id u0QMidvs015682 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 26 Jan 2016 14:44:39 -0800 (PST) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id u0QMidUJ015681; Tue, 26 Jan 2016 14:44:39 -0800 (PST) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 26 Jan 2016 14:44:39 -0800 From: Gleb Smirnoff To: Sepherosa Ziehau , adrian@FreeBSD.org Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r294788 - head/sys/dev/hyperv/netvsc Message-ID: <20160126224439.GT6885@FreeBSD.org> References: <201601260942.u0Q9gD14062309@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201601260942.u0Q9gD14062309@repo.freebsd.org> User-Agent: Mutt/1.5.24 (2015-08-30) 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: Tue, 26 Jan 2016 22:44:41 -0000 Sepherosa, On Tue, Jan 26, 2016 at 09:42:13AM +0000, Sepherosa Ziehau wrote: S> Author: sephe S> Date: Tue Jan 26 09:42:13 2016 S> New Revision: 294788 S> URL: https://svnweb.freebsd.org/changeset/base/294788 S> S> Log: S> hyperv/hn: Improve sending performance S> S> - Avoid main lock contention by trylock for if_start, if that fails, S> schedule TX taskqueue for if_start S> - Don't do direct sending if the packet to be sent is large, e.g. S> TSO packet. S> S> This change gives me stable 9.1Gbps TCP sending performance w/ TSO S> over a 10Gbe directly connected network (the performance fluctuated S> between 4Gbps and 9Gbps before this commit). It also improves non- S> TSO TCP sending performance a lot. S> S> Reviewed by: adrian, royger S> Approved by: adrian (mentor) S> Sponsored by: Microsoft OSTC S> Differential Revision: https://reviews.freebsd.org/D5074 Why do you actually use if_start, not if_transmit? -- Totus tuus, Glebius.