Date: Sat, 15 Nov 2003 02:17:22 -0800 From: Luigi Rizzo <rizzo@icir.org> To: Robert Watson <rwatson@FreeBSD.org> Cc: src-committers@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/an if_an.c if_anreg.h src/sys/dev/bfe if_bfe.c src/sys/dev/my if_my.c src/sys/dev/owi if_owi.c if_wivar.h src/sys/dev/re if_re.c src/sys/dev/wl if_wl.c src/sys/pci if_dc.c if_dcreg.h if_pcn.c if_pcnreg.h if_rl.c ... Message-ID: <20031115021722.A7670@xorpc.icir.org> In-Reply-To: <Pine.NEB.3.96L.1031114162807.18149F-100000@fledge.watson.org>; from rwatson@FreeBSD.org on Fri, Nov 14, 2003 at 04:33:18PM -0500 References: <20031114132714.A88606@xorpc.icir.org> <Pine.NEB.3.96L.1031114162807.18149F-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 14, 2003 at 04:33:18PM -0500, Robert Watson wrote: ... > I can think of two concerns with that: first, that interface locks may be > handled differently for different interfaces, and second, that in the > future we may want to avoid an unlock/lock pair for each packet input. > I've been running with local patches intended to reduce the number of > unlock/lock pairs for coalesced interrupt handling by only unlocking to > deliver chains of mbufs to if_input rather than individual mbufs. I.e., as i was telling Sam, i doubt you'll see any coalescing except in cases od DoS attacks on GigE interfaces, or with very slow boxes. As a matter of fact, in the latter case the risk is looping in the driver up to mbuf exhaustion, and then passing up a zillion buffer to if_input() in a single call. Which basically has the same problem of deferred dispatch through netisr. (easy fix there, limit the burst size to some small value such as 5-10 buffers). cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031115021722.A7670>