cvs commit: src/sys/alpha/alpha busdma_machdep.c

Maxime Henrion mux at FreeBSD.org
Fri Mar 11 18:43:51 PST 2005


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


More information about the cvs-all mailing list