From owner-svn-src-head@FreeBSD.ORG Fri Jun 20 02:54:04 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AC2DDF0; Fri, 20 Jun 2014 02:54:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 990B027D9; Fri, 20 Jun 2014 02:54:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s5K2s4Fn015755; Fri, 20 Jun 2014 02:54:04 GMT (envelope-from bryanv@svn.freebsd.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s5K2s4ej015754; Fri, 20 Jun 2014 02:54:04 GMT (envelope-from bryanv@svn.freebsd.org) Message-Id: <201406200254.s5K2s4ej015754@svn.freebsd.org> From: Bryan Venteicher Date: Fri, 20 Jun 2014 02:54:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r267663 - head/sys/dev/vmware/vmxnet3 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18 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, 20 Jun 2014 02:54:04 -0000 Author: bryanv Date: Fri Jun 20 02:54:04 2014 New Revision: 267663 URL: http://svnweb.freebsd.org/changeset/base/267663 Log: Increment the pending packets more aggressively for TSO Assume the number of description used is reasonable value to increment this otherwise opaque field by. While here, reduce a minor difference between the legacy and multiqueue transmit paths. MFC after: 1 week Modified: head/sys/dev/vmware/vmxnet3/if_vmx.c Modified: head/sys/dev/vmware/vmxnet3/if_vmx.c ============================================================================== --- head/sys/dev/vmware/vmxnet3/if_vmx.c Fri Jun 20 02:49:03 2014 (r267662) +++ head/sys/dev/vmware/vmxnet3/if_vmx.c Fri Jun 20 02:54:04 2014 (r267663) @@ -2856,7 +2856,8 @@ vmxnet3_txq_encap(struct vmxnet3_txqueue vmxnet3_barrier(sc, VMXNET3_BARRIER_WR); sop->gen ^= 1; - if (++txq->vxtxq_ts->npending >= txq->vxtxq_ts->intr_threshold) { + txq->vxtxq_ts->npending += nsegs; + if (txq->vxtxq_ts->npending >= txq->vxtxq_ts->intr_threshold) { txq->vxtxq_ts->npending = 0; vmxnet3_write_bar0(sc, VMXNET3_BAR0_TXH(txq->vxtxq_id), txr->vxtxr_head); @@ -2973,8 +2974,7 @@ vmxnet3_txq_mq_start_locked(struct vmxne break; } - error = vmxnet3_txq_encap(txq, &m); - if (error) { + if (vmxnet3_txq_encap(txq, &m) != 0) { if (m != NULL) drbr_putback(ifp, br, m); else