On Altix, DMA may be reordered within the NUMA interconnect.
This can be a problem with Infiniband, where DMA to Completion
Queues can race with data DMA. This patchset allows a driver
to associate a memory region with a "dmaflush" attribute, so
that writes to the memory region flush in-flight DMA, preventing
the CQ/data race.
There are three patches in this set:
[1/3]: add pci_dma_flags_set_dmaflush() to pci interface
[2/3]: redefine pci_dma_flags_set_dmaflush() for sn-ia64
[3/3]: document pci_dma_flags_set_dmaflush()
And there would be additional patches to IB drivers to make use
of the interface, of course.
--
Arthur
-