Skip site navigation (1)Skip section navigation (2)
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>