Call for testing and review, busdma changes

Scott Long scott4long at yahoo.com
Sun Dec 30 18:26:13 UTC 2012


On Dec 30, 2012, at 11:21 AM, Ian Lepore <freebsd at damnhippie.dyndns.org> wrote:

> On Mon, 2012-12-24 at 22:13 -0500, Scott Long wrote:
>>>>> 
>>>>> Still unresolved is what to do about the remaining cases -- attempts to
>>>>> do dma in arbitrary buffers not obtained from bus_dmamem_alloc() which
>>>>> are not aligned and padded appropriately.  There was some discussion a
>>>>> while back, but no clear resolution.  I decided not to get bogged down
>>>>> by that fact and to fix the mbuf and allocated-buffer situations that we
>>>>> know how to deal with for now.
>>>> 
>> 
>> Why would these allocations not be handled as normal dynamic buffers
>> would with bus_dmamap_load()?
>> 
>> Scott
> 
> That's my point -- for "normal dynamic buffers" (that is, they weren't
> obtained from bus_dmamem_alloc() and they aren't mbufs) which can have
> arbitrary alignment and padding in relation to cache line boundaries --
> we don't handle them correctly now unless they're accidentally already
> aligned and sized to the right boundaries.  What's unresolved is how to
> handle them correctly if they're not aligned/padded, that is, what to do
> about them that avoids needing a partial cacheline flush at sync time.
> 

Alignment is already handled.

Scott



More information about the freebsd-sparc64 mailing list