Date: Fri, 11 Jun 2010 07:51:40 -0400 From: John Baldwin <jhb@freebsd.org> To: Marcel Moolenaar <marcel@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r209026 - in head/sys/ia64: ia64 include Message-ID: <201006110751.40735.jhb@freebsd.org> In-Reply-To: <201006110300.o5B30X9q045387@svn.freebsd.org> References: <201006110300.o5B30X9q045387@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 10 June 2010 11:00:33 pm Marcel Moolenaar wrote: > Author: marcel > Date: Fri Jun 11 03:00:32 2010 > New Revision: 209026 > URL: http://svn.freebsd.org/changeset/base/209026 > > Log: > Bump MAX_BPAGES from 256 to 1024. It seems that a few drivers, bge(4) > in particular, do not handle deferred DMA map load operations at all. > Any error, and especially EINPROGRESS, is treated as a hard error and > typically abort the current operation. The fact that the busdma code > queues the load operation for when resources (i.e. bounce buffers in > this particular case) are available makes this especially problematic. > Bounce buffering, unlike what the PR synopsis would suggest, works > fine. > > While on the subject, properly implement swi_vm(). NIC drivers do not handle deferred load operations at all (note that bus_dmamap_load_mbuf() and bus_dmamap_load_mbuf_sg() enforce BUS_DMA_NOWAIT). It is common practice to just drop the packet in that case. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006110751.40735.jhb>