cvs commit: src/sys/alpha/alpha busdma_machdep.c
Scott Long
scottl at samsco.org
Fri Mar 11 21:06:53 PST 2005
Maxime Henrion wrote:
> mux 2005-03-12 02:43:50 UTC
>
> FreeBSD src repository
>
> Modified files:
> sys/alpha/alpha busdma_machdep.c
> Log:
> Fix a long-standing bug in alpha's implementation of busdma. We need to
> OR the physical address with alpha_XXX_dmamap_or to get the DMA address,
> like the name of the variable suggests. However, while we were doing
> this correctly in the alpha_XXX_dmamap() macro, the busdma code added
> the variable to the physical address instead of or'ing it. Fortunately
> and if my math is not entirely wrong, you would need more than 128GB of
> RAM and a device able to do DMA in 64bits to experience the bug.
>
> Spotted by: cognet
>
> Revision Changes Path
> 1.50 +4 -4 src/sys/alpha/alpha/busdma_machdep.c
You're aware that we don't correctly support the Alpha IOMMU, so we are
limited to 2GB or so of physical RAM anyways.
Scott
More information about the cvs-src
mailing list