[PATCH 0/4] staging: comedi: addi_apci_3120: redo DMA buffer allocation

Ian Abbott abbotti at mev.co.uk
Fri Sep 12 11:19:53 UTC 2014


"addi_apci_3120" allocates more pages of DMA buffer than it uses, may
allocate half a double-buffer it does not use because it's the "wrong"
half that it managed to allocate (unlikely), and relies on virt_to_bus()
to treat generic kernel memory from get_free_pages() as coherent DMA
memory.  Correct the issues, using dma_alloc_coherent() to allocate the
DMA buffers.

1) staging: comedi: addi_apci_3120: don't allocate 2nd DMA buffer on
   failure
2) staging: comedi: addi_apci_3120: don't overallocate DMA buffer
3) staging: comedi: addi_apci_3120: use dma_alloc_coherent()
4) staging: comedi: addi_apci_3120: simplify setting of
   devpriv->us_UseDma

 drivers/staging/comedi/Kconfig                     |  2 +-
 .../staging/comedi/drivers/addi-data/addi_common.h |  3 +-
 drivers/staging/comedi/drivers/addi_apci_3120.c    | 44 ++++++++++------------
 3 files changed, 22 insertions(+), 27 deletions(-)


More information about the devel mailing list