NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-amd64/42980: satalink DMA fails under amd64



On Wed, Mar 17, 2010 at 09:59:58PM -0400, Julian Bourne wrote:
> Quick update - just verified that your exact patch works
> too Matthew - and its a good thing to have in there
> anyway (target the 8192 boundary workaround at the
> right chipset).
> 
> I'll let you and Manuel work out the right way to address
> the 3112 - please keep me on the distribution - I'm
> curious about the answer.
> 
> In the meantime, I looked into why the i386 isn't
> exhibiting the problem - it looks like it might be because
> the arch/x86/x86/bus_dma:_bus_dmamem_alloc_range()
> function simply doesn't make the same check
> (boundary >= size) as the xen implementation in arch/xen/x86/xen_bus_dma.c?
> 
> Which begs the question, should it? (given that
> bus_dmamem_alloc man page implies its a not a legal
> argument (and thanks for the awesome man pages by the
> way - NetBSD rules)).

I think I explicitely added this check because the hypervisor
can't handle a boundary constraint explicitely, and the allocator
will return a memory that fits the constraint only if boundary >= size
(thanksfully the specs already said that :)

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index