From owner-svn-src-stable@FreeBSD.ORG Tue Nov 16 18:25:01 2010 Return-Path: Delivered-To: svn-src-stable@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 40A1C1065670; Tue, 16 Nov 2010 18:25:01 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from fallbackmx10.syd.optusnet.com.au (fallbackmx10.syd.optusnet.com.au [211.29.132.251]) by mx1.freebsd.org (Postfix) with ESMTP id C94258FC0A; Tue, 16 Nov 2010 18:25:00 +0000 (UTC) Received: from mail03.syd.optusnet.com.au (mail03.syd.optusnet.com.au [211.29.132.184]) by fallbackmx10.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id oAGGCTd8013288; Wed, 17 Nov 2010 03:12:29 +1100 Received: from c122-106-146-145.carlnfd1.nsw.optusnet.com.au (c122-106-146-145.carlnfd1.nsw.optusnet.com.au [122.106.146.145]) by mail03.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id oAGGCPq9008655 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 17 Nov 2010 03:12:26 +1100 Date: Wed, 17 Nov 2010 03:12:25 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Maxim Sobolev In-Reply-To: <201011160440.oAG4e3YU039413@svn.freebsd.org> Message-ID: <20101117030118.X1203@besplex.bde.org> References: <201011160440.oAG4e3YU039413@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-stable@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, svn-src-stable-7@FreeBSD.org Subject: Re: svn commit: r215368 - in stable/7/sys: arm/at91 arm/xscale/ixp425 contrib/dev/oltr dev/ae dev/an dev/ar dev/arl dev/ath dev/awi dev/ce dev/cm dev/cnw dev/cp dev/cs dev/ctau dev/cx dev/cxgb dev/ed d... X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Nov 2010 18:25:01 -0000 On Tue, 16 Nov 2010, Maxim Sobolev wrote: > Log: > MFC r207554: > > Add new tunable 'net.link.ifqmaxlen' to set default send interface > queue length. The default value for this parameter is 50, which is > quite low for many of today's uses and the only way to modify this > parameter right now is to edit if_var.h file. Also add read-only > sysctl with the same name, so that it's possible to retrieve the > current value. This was quite low for yestdeay's uses (starting in about 1995), but today it is little missed since only yesterday's low-end hardware uses it. Most of today's interfaces are 1Gbps, and for this it is almost essential for the hardware to have a ring buffer with > 50 entries, so most of today's drivers ignore ifqmaxlen and set the queue length to the almost equally bogus value of the ring buffer size (-1). I set it to about 10000 instead in bge and em (10000 is too large, but fixes streaming under certain loads when hz is small). > Modified: > stable/7/sys/arm/at91/if_ate.c > stable/7/sys/arm/xscale/ixp425/if_npe.c > stable/7/sys/contrib/dev/oltr/if_oltr.c > stable/7/sys/dev/ae/if_ae.c > stable/7/sys/dev/an/if_an.c > stable/7/sys/dev/ar/if_ar.c > stable/7/sys/dev/arl/if_arl.c > stable/7/sys/dev/ath/if_ath.c > stable/7/sys/dev/awi/awi.c > stable/7/sys/dev/ce/if_ce.c > stable/7/sys/dev/cm/smc90cx6.c > stable/7/sys/dev/cnw/if_cnw.c > stable/7/sys/dev/cp/if_cp.c > stable/7/sys/dev/cs/if_cs.c > stable/7/sys/dev/ctau/if_ct.c > stable/7/sys/dev/cx/if_cx.c > stable/7/sys/dev/cxgb/cxgb_main.c > stable/7/sys/dev/ed/if_ed.c > stable/7/sys/dev/ep/if_ep.c > stable/7/sys/dev/ex/if_ex.c > stable/7/sys/dev/ie/if_ie.c > stable/7/sys/dev/iicbus/if_ic.c > stable/7/sys/dev/ipw/if_ipw.c > stable/7/sys/dev/iwi/if_iwi.c > stable/7/sys/dev/le/lance.c > stable/7/sys/dev/malo/if_malo.c > stable/7/sys/dev/my/if_my.c > stable/7/sys/dev/nxge/if_nxge.c > stable/7/sys/dev/pdq/pdq_ifsubr.c > stable/7/sys/dev/ppbus/if_plip.c > stable/7/sys/dev/ral/rt2560.c > stable/7/sys/dev/ral/rt2661.c > stable/7/sys/dev/ray/if_ray.c > stable/7/sys/dev/sbni/if_sbni.c > stable/7/sys/dev/sbsh/if_sbsh.c > stable/7/sys/dev/sn/if_sn.c > stable/7/sys/dev/snc/dp83932.c > stable/7/sys/dev/sr/if_sr.c > stable/7/sys/dev/usb/if_aue.c > stable/7/sys/dev/usb/if_axe.c > stable/7/sys/dev/usb/if_cdce.c > stable/7/sys/dev/usb/if_cue.c > stable/7/sys/dev/usb/if_kue.c > stable/7/sys/dev/usb/if_rue.c > stable/7/sys/dev/usb/if_rum.c > stable/7/sys/dev/usb/if_udav.c > stable/7/sys/dev/usb/if_ural.c > stable/7/sys/dev/usb/if_zyd.c > stable/7/sys/dev/usb/udbp.c > stable/7/sys/dev/vx/if_vx.c > stable/7/sys/dev/wi/if_wi.c > stable/7/sys/dev/wl/if_wl.c > stable/7/sys/dev/wpi/if_wpi.c > stable/7/sys/dev/xe/if_xe.c > stable/7/sys/i4b/capi/capi_l4if.c > stable/7/sys/i4b/driver/i4b_ing.c > stable/7/sys/i4b/driver/i4b_isppp.c > stable/7/sys/i4b/driver/i4b_trace.c > stable/7/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c > stable/7/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c > stable/7/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c > stable/7/sys/i4b/layer1/ihfc/i4b_ihfc_drv.c > stable/7/sys/i4b/layer1/isic/i4b_bchan.c > stable/7/sys/i4b/layer1/itjc/i4b_itjc_pci.c > stable/7/sys/i4b/layer1/iwic/i4b_iwic_bchan.c > stable/7/sys/i4b/layer4/i4b_i4bdrv.c Note that there is only yeterday's hardware in this list. The queue length should be per-interface and configured only by a sysctl, or better, drivers dynamically configure it to a good value. Bruce